ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಅನ್ನು ಅನ್ವೇಷಿಸಿ, ಜಾಗತಿಕವಾಗಿ ವೈವಿಧ್ಯಮಯ ಸಾಧನಗಳು ಮತ್ತು ನೆಟ್ವರ್ಕ್ಗಳಲ್ಲಿ ವೆಬ್ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಹೆಚ್ಚಿಸುವ, ರೆಂಡರಿಂಗ್ ದಕ್ಷತೆ ಮತ್ತು ಬಳಕೆದಾರರ ಅನುಭವವನ್ನು ಉತ್ತಮಗೊಳಿಸುವ ಪ್ರಬಲ ತಂತ್ರವಾಗಿದೆ.
ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್: ಜಾಗತಿಕ ವೆಬ್ ಅನುಭವಗಳಿಗಾಗಿ ಕಾರ್ಯಕ್ಷಮತೆ ಆಪ್ಟಿಮೈಸೇಶನ್ ಅನ್ನು ಅನಾವರಣಗೊಳಿಸುವುದು
ಇಂಟರ್ನೆಟ್ನ ವಿಶಾಲ, ಪರಸ್ಪರ ಸಂಪರ್ಕಿತ ಜಗತ್ತಿನಲ್ಲಿ, ಬಳಕೆದಾರರು ಅಸಂಖ್ಯಾತ ಸಾಧನಗಳಿಂದ, ವಿಭಿನ್ನ ನೆಟ್ವರ್ಕ್ ಪರಿಸ್ಥಿತಿಗಳಲ್ಲಿ, ಮತ್ತು ಪ್ರಪಂಚದ ಪ್ರತಿಯೊಂದು ಮೂಲೆಯಿಂದಲೂ ವಿಷಯವನ್ನು ಪ್ರವೇಶಿಸುತ್ತಾರೆ, ಇಲ್ಲಿ ಅತ್ಯುತ್ತಮ ವೆಬ್ ಕಾರ್ಯಕ್ಷಮತೆಯ ಅನ್ವೇಷಣೆಯು ಕೇವಲ ತಾಂತ್ರಿಕ ಆಕಾಂಕ್ಷೆಯಲ್ಲ; ಇದು ಎಲ್ಲರನ್ನೂ ಒಳಗೊಂಡ ಮತ್ತು ಪರಿಣಾಮಕಾರಿ ಡಿಜಿಟಲ್ ಸಂವಹನಕ್ಕೆ ಮೂಲಭೂತ ಅವಶ್ಯಕತೆಯಾಗಿದೆ. ನಿಧಾನವಾಗಿ ಲೋಡ್ ಆಗುವ ವೆಬ್ಸೈಟ್ಗಳು, ಅಸಹಜ ಅನಿಮೇಷನ್ಗಳು, ಮತ್ತು ಪ್ರತಿಕ್ರಿಯಿಸದ ಇಂಟರ್ಫೇಸ್ಗಳು ಬಳಕೆದಾರರನ್ನು ಅವರ ಸ್ಥಳ ಅಥವಾ ಸಾಧನದ ಅತ್ಯಾಧುನಿಕತೆಯನ್ನು ಲೆಕ್ಕಿಸದೆ ದೂರವಿಡಬಹುದು. ವೆಬ್ಪುಟವನ್ನು ರೆಂಡರ್ ಮಾಡುವ ಆಧಾರವಾಗಿರುವ ಪ್ರಕ್ರಿಯೆಗಳು ನಂಬಲಾಗದಷ್ಟು ಸಂಕೀರ್ಣವಾಗಿರಬಹುದು, ಮತ್ತು ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು ವೈಶಿಷ್ಟ್ಯಗಳಲ್ಲಿ ಸಮೃದ್ಧವಾಗಿ ಮತ್ತು ದೃಷ್ಟಿಗೋಚರವಾಗಿ ಸಂಕೀರ್ಣವಾದಂತೆ, ಬಳಕೆದಾರರ ಬ್ರೌಸರ್ನ ಮೇಲೆ ಇರಿಸಲಾದ ಗಣನಾತ್ಮಕ ಬೇಡಿಕೆಗಳು ಗಮನಾರ್ಹವಾಗಿ ಹೆಚ್ಚಾಗುತ್ತವೆ. ಈ ಹೆಚ್ಚುತ್ತಿರುವ ಬೇಡಿಕೆಯು ಆಗಾಗ್ಗೆ ಕಾರ್ಯಕ್ಷಮತೆಯ ಅಡಚಣೆಗಳಿಗೆ ಕಾರಣವಾಗುತ್ತದೆ, ಇದು ಆರಂಭಿಕ ಪುಟ ಲೋಡ್ ಸಮಯದಿಂದ ಹಿಡಿದು ಬಳಕೆದಾರರ ಸಂವಹನಗಳ ಸುಗಮತೆಯವರೆಗೆ ಎಲ್ಲದರ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುತ್ತದೆ.
ಆಧುನಿಕ ವೆಬ್ ಅಭಿವೃದ್ಧಿಯು ಡೈನಾಮಿಕ್, ಸಂವಾದಾತ್ಮಕ ಅನುಭವಗಳನ್ನು ರಚಿಸಲು ಒತ್ತು ನೀಡುತ್ತದೆ. ಆದಾಗ್ಯೂ, ವೆಬ್ಪುಟದಲ್ಲಿನ ಪ್ರತಿಯೊಂದು ಬದಲಾವಣೆ – ಅದು ಒಂದು ಎಲಿಮೆಂಟ್ನ ಗಾತ್ರವನ್ನು ಬದಲಾಯಿಸುವುದು, ವಿಷಯವನ್ನು ಸೇರಿಸುವುದು, ಅಥವಾ ಒಂದು ಸ್ಟೈಲ್ ಪ್ರಾಪರ್ಟಿಯನ್ನು ಬದಲಾಯಿಸುವುದು ಆಗಿರಬಹುದು – ಬ್ರೌಸರ್ನ ರೆಂಡರಿಂಗ್ ಎಂಜಿನ್ನಲ್ಲಿ ದುಬಾರಿ ಗಣನೆಗಳ ಸರಣಿಯನ್ನು ಪ್ರಚೋದಿಸಬಹುದು. ಈ ಗಣನೆಗಳು, 'ರಿಫ್ಲೋಗಳು' (ಲೇಔಟ್ ಲೆಕ್ಕಾಚಾರಗಳು) ಮತ್ತು 'ರಿಪೇಂಟ್ಗಳು' (ಪಿಕ್ಸೆಲ್ ರೆಂಡರಿಂಗ್) ಎಂದು ಕರೆಯಲ್ಪಡುತ್ತವೆ, ಸಿಪಿಯು ಸೈಕಲ್ಗಳನ್ನು ತ್ವರಿತವಾಗಿ ಬಳಸಿಕೊಳ್ಳಬಹುದು, ವಿಶೇಷವಾಗಿ ಕಡಿಮೆ ಶಕ್ತಿಯುತ ಸಾಧನಗಳಲ್ಲಿ ಅಥವಾ ಅನೇಕ ಅಭಿವೃದ್ಧಿಶೀಲ ಪ್ರದೇಶಗಳಲ್ಲಿ ಸಾಮಾನ್ಯವಾಗಿ ಕಂಡುಬರುವ ನಿಧಾನವಾದ ನೆಟ್ವರ್ಕ್ ಸಂಪರ್ಕಗಳಲ್ಲಿ. ಈ ಲೇಖನವು ಈ ಕಾರ್ಯಕ್ಷಮತೆಯ ಸವಾಲುಗಳನ್ನು ತಗ್ಗಿಸಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾದ ಶಕ್ತಿಯುತ, ಆದರೆ ಆಗಾಗ್ಗೆ ಕಡಿಮೆ ಬಳಕೆಯಾಗುವ CSS ಪ್ರಾಪರ್ಟಿಯನ್ನು ಪರಿಶೀಲಿಸುತ್ತದೆ: CSS ಕಂಟೇನ್ಮೆಂಟ್
. contain
ಅನ್ನು ಅರ್ಥಮಾಡಿಕೊಂಡು ಮತ್ತು ಕಾರ್ಯತಂತ್ರವಾಗಿ ಅನ್ವಯಿಸುವ ಮೂಲಕ, ಡೆವಲಪರ್ಗಳು ತಮ್ಮ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳ ರೆಂಡರಿಂಗ್ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಗಮನಾರ್ಹವಾಗಿ ಉತ್ತಮಗೊಳಿಸಬಹುದು, ಜಾಗತಿಕ ಪ್ರೇಕ್ಷಕರಿಗೆ ಸುಗಮ, ಹೆಚ್ಚು ಪ್ರತಿಕ್ರಿಯಾತ್ಮಕ ಮತ್ತು ಸಮಾನ ಅನುಭವವನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಬಹುದು.
ಮೂಲ ಸವಾಲು: ವೆಬ್ ಕಾರ್ಯಕ್ಷಮತೆ ಜಾಗತಿಕವಾಗಿ ಏಕೆ ಮುಖ್ಯವಾಗಿದೆ
ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ನ ಶಕ್ತಿಯನ್ನು ನಿಜವಾಗಿಯೂ ಪ್ರಶಂಸಿಸಲು, ಬ್ರೌಸರ್ನ ರೆಂಡರಿಂಗ್ ಪೈಪ್ಲೈನ್ ಅನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಅತ್ಯಗತ್ಯ. ಬ್ರೌಸರ್ HTML, CSS, ಮತ್ತು JavaScript ಅನ್ನು ಸ್ವೀಕರಿಸಿದಾಗ, ಪುಟವನ್ನು ಪ್ರದರ್ಶಿಸಲು ಹಲವಾರು ನಿರ್ಣಾಯಕ ಹಂತಗಳ ಮೂಲಕ ಹೋಗುತ್ತದೆ:
- DOM ನಿರ್ಮಾಣ: ಬ್ರೌಸರ್ ಪುಟದ ರಚನೆಯನ್ನು ಪ್ರತಿನಿಧಿಸುವ ಡಾಕ್ಯುಮೆಂಟ್ ಆಬ್ಜೆಕ್ಟ್ ಮಾಡೆಲ್ (DOM) ಅನ್ನು ನಿರ್ಮಿಸಲು HTML ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡುತ್ತದೆ.
- CSSOM ನಿರ್ಮಾಣ: ಇದು ಪ್ರತಿ ಎಲಿಮೆಂಟ್ಗೆ ಸ್ಟೈಲ್ಗಳನ್ನು ಪ್ರತಿನಿಧಿಸುವ CSS ಆಬ್ಜೆಕ್ಟ್ ಮಾಡೆಲ್ (CSSOM) ಅನ್ನು ನಿರ್ಮಿಸಲು CSS ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡುತ್ತದೆ.
- ರೆಂಡರ್ ಟ್ರೀ ರಚನೆ: DOM ಮತ್ತು CSSOM ಅನ್ನು ಸಂಯೋಜಿಸಿ ರೆಂಡರ್ ಟ್ರೀ ಅನ್ನು ರೂಪಿಸಲಾಗುತ್ತದೆ, ಇದು ಕೇವಲ ಗೋಚರಿಸುವ ಎಲಿಮೆಂಟ್ಗಳು ಮತ್ತು ಅವುಗಳ ಗಣನೆ ಮಾಡಿದ ಸ್ಟೈಲ್ಗಳನ್ನು ಮಾತ್ರ ಹೊಂದಿರುತ್ತದೆ.
- ಲೇಔಟ್ (ರಿಫ್ಲೋ): ಬ್ರೌಸರ್ ರೆಂಡರ್ ಟ್ರೀನಲ್ಲಿರುವ ಪ್ರತಿಯೊಂದು ಎಲಿಮೆಂಟ್ನ ನಿಖರವಾದ ಸ್ಥಾನ ಮತ್ತು ಗಾತ್ರವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುತ್ತದೆ. ಇದು ಹೆಚ್ಚು ಸಿಪಿಯು-ತೀವ್ರ ಕಾರ್ಯಾಚರಣೆಯಾಗಿದೆ, ಏಕೆಂದರೆ ಪುಟದ ಒಂದು ಭಾಗದಲ್ಲಿನ ಬದಲಾವಣೆಗಳು ಇತರ ಅನೇಕ ಎಲಿಮೆಂಟ್ಗಳ ಲೇಔಟ್ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರಬಹುದು, ಕೆಲವೊಮ್ಮೆ ಸಂಪೂರ್ಣ ಡಾಕ್ಯುಮೆಂಟ್ ಮೇಲೆಯೂ ಪರಿಣಾಮ ಬೀರಬಹುದು.
- ಪೇಂಟ್ (ರಿಪೇಂಟ್): ನಂತರ ಬ್ರೌಸರ್ ಪ್ರತಿಯೊಂದು ಎಲಿಮೆಂಟ್ಗೆ ಪಿಕ್ಸೆಲ್ಗಳನ್ನು ತುಂಬುತ್ತದೆ, ಬಣ್ಣಗಳು, ಗ್ರೇಡಿಯಂಟ್ಗಳು, ಚಿತ್ರಗಳು ಮತ್ತು ಇತರ ದೃಶ್ಯ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಅನ್ವಯಿಸುತ್ತದೆ.
- ಕಾಂಪೊಸಿಟಿಂಗ್: ಅಂತಿಮವಾಗಿ, ಚಿತ್ರಿಸಿದ ಲೇಯರ್ಗಳನ್ನು ಸಂಯೋಜಿಸಿ ಪರದೆಯ ಮೇಲೆ ಅಂತಿಮ ಚಿತ್ರವನ್ನು ಪ್ರದರ್ಶಿಸಲಾಗುತ್ತದೆ.
ಕಾರ್ಯಕ್ಷಮತೆಯ ಸವಾಲುಗಳು ಮುಖ್ಯವಾಗಿ ಲೇಔಟ್ ಮತ್ತು ಪೇಂಟ್ ಹಂತಗಳಿಂದ ಉದ್ಭವಿಸುತ್ತವೆ. ಒಂದು ಎಲಿಮೆಂಟ್ನ ಗಾತ್ರ, ಸ್ಥಾನ, ಅಥವಾ ವಿಷಯ ಬದಲಾದಾಗಲೆಲ್ಲಾ, ಬ್ರೌಸರ್ ಇತರ ಎಲಿಮೆಂಟ್ಗಳ ಲೇಔಟ್ ಅನ್ನು ಮರು-ಲೆಕ್ಕಾಚಾರ ಮಾಡಬೇಕಾಗಬಹುದು (ಒಂದು ರಿಫ್ಲೋ) ಅಥವಾ ಕೆಲವು ಪ್ರದೇಶಗಳನ್ನು ಮರು-ಪೇಂಟ್ ಮಾಡಬೇಕಾಗಬಹುದು (ಒಂದು ರಿಪೇಂಟ್). ಅನೇಕ ಡೈನಾಮಿಕ್ ಎಲಿಮೆಂಟ್ಗಳು ಅಥವಾ ಆಗಾಗ್ಗೆ DOM ಮ್ಯಾನಿಪ್ಯುಲೇಷನ್ಗಳೊಂದಿಗೆ ಸಂಕೀರ್ಣವಾದ ಯುಐಗಳು ಈ ದುಬಾರಿ ಕಾರ್ಯಾಚರಣೆಗಳ ಸರಣಿಯನ್ನು ಪ್ರಚೋದಿಸಬಹುದು, ಇದು ಗಮನಾರ್ಹವಾದ ಜ್ಯಾಂಕ್, ತೊದಲುವ ಅನಿಮೇಷನ್ಗಳು ಮತ್ತು ಕಳಪೆ ಬಳಕೆದಾರರ ಅನುಭವಕ್ಕೆ ಕಾರಣವಾಗುತ್ತದೆ. ಕಡಿಮೆ ಸಾಮರ್ಥ್ಯದ ಸ್ಮಾರ್ಟ್ಫೋನ್ ಮತ್ತು ಸೀಮಿತ ಬ್ಯಾಂಡ್ವಿಡ್ತ್ ಹೊಂದಿರುವ ದೂರದ ಪ್ರದೇಶದಲ್ಲಿರುವ ಬಳಕೆದಾರರು ಜಾಹೀರಾತುಗಳನ್ನು ಆಗಾಗ್ಗೆ ಮರುಲೋಡ್ ಮಾಡುವ ಅಥವಾ ವಿಷಯವನ್ನು ನವೀಕರಿಸುವ ಸುದ್ದಿ ವೆಬ್ಸೈಟ್ನೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸಲು ಪ್ರಯತ್ನಿಸುವುದನ್ನು ಕಲ್ಪಿಸಿಕೊಳ್ಳಿ. ಸರಿಯಾದ ಆಪ್ಟಿಮೈಸೇಶನ್ ಇಲ್ಲದೆ, ಅವರ ಅನುಭವವು ತ್ವರಿತವಾಗಿ ನಿರಾಶಾದಾಯಕವಾಗಬಹುದು.
ಕಾರ್ಯಕ್ಷಮತೆ ಆಪ್ಟಿಮೈಸೇಶನ್ನ ಜಾಗತಿಕ ಪ್ರಸ್ತುತತೆಯನ್ನು ಅತಿಯಾಗಿ ಹೇಳಲಾಗುವುದಿಲ್ಲ:
- ಸಾಧನ ವೈವಿಧ್ಯತೆ: ಉನ್ನತ-ಮಟ್ಟದ ಡೆಸ್ಕ್ಟಾಪ್ಗಳಿಂದ ಹಿಡಿದು ಬಜೆಟ್ ಸ್ಮಾರ್ಟ್ಫೋನ್ಗಳವರೆಗೆ, ಜಾಗತಿಕವಾಗಿ ಬಳಕೆದಾರರಿಗೆ ಲಭ್ಯವಿರುವ ಕಂಪ್ಯೂಟಿಂಗ್ ಶಕ್ತಿಯ ವ್ಯಾಪ್ತಿಯು ವಿಶಾಲವಾಗಿದೆ. ಆಪ್ಟಿಮೈಸೇಶನ್ ಈ ಸ್ಪೆಕ್ಟ್ರಮ್ನಾದ್ಯಂತ ಸ್ವೀಕಾರಾರ್ಹ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಖಚಿತಪಡಿಸುತ್ತದೆ.
- ನೆಟ್ವರ್ಕ್ ವ್ಯತ್ಯಾಸ: ಬ್ರಾಡ್ಬ್ಯಾಂಡ್ ಪ್ರವೇಶವು ಸಾರ್ವತ್ರಿಕವಲ್ಲ. ಅನೇಕ ಬಳಕೆದಾರರು ನಿಧಾನವಾದ, ಕಡಿಮೆ ಸ್ಥಿರವಾದ ಸಂಪರ್ಕಗಳನ್ನು ಅವಲಂಬಿಸಿದ್ದಾರೆ (ಉದಾಹರಣೆಗೆ, ಉದಯೋನ್ಮುಖ ಮಾರುಕಟ್ಟೆಗಳಲ್ಲಿ 2G/3G). ಕಡಿಮೆ ಲೇಔಟ್ ಮತ್ತು ಪೇಂಟ್ ಸೈಕಲ್ಗಳು ಕಡಿಮೆ ಡೇಟಾ ಸಂಸ್ಕರಣೆ ಮತ್ತು ತ್ವರಿತ ದೃಶ್ಯ ನವೀಕರಣಗಳನ್ನು ಅರ್ಥೈಸುತ್ತವೆ.
- ಬಳಕೆದಾರರ ನಿರೀಕ್ಷೆಗಳು: ನಿರೀಕ್ಷೆಗಳು ಸ್ವಲ್ಪ ಬದಲಾಗಬಹುದಾದರೂ, ಸಾರ್ವತ್ರಿಕವಾಗಿ ಅಂಗೀಕರಿಸಲ್ಪಟ್ಟ ಮಾನದಂಡವು ಪ್ರತಿಕ್ರಿಯಾತ್ಮಕ ಮತ್ತು ಸುಗಮ ಬಳಕೆದಾರ ಇಂಟರ್ಫೇಸ್ ಆಗಿದೆ. ವಿಳಂಬವು ನಂಬಿಕೆ ಮತ್ತು ತೊಡಗಿಸಿಕೊಳ್ಳುವಿಕೆಯನ್ನು ದುರ್ಬಲಗೊಳಿಸುತ್ತದೆ.
- ಆರ್ಥಿಕ ಪರಿಣಾಮ: ವ್ಯವಹಾರಗಳಿಗೆ, ಉತ್ತಮ ಕಾರ್ಯಕ್ಷಮತೆಯು ಹೆಚ್ಚಿನ ಪರಿವರ್ತನೆ ದರಗಳು, ಕಡಿಮೆ ಬೌನ್ಸ್ ದರಗಳು, ಮತ್ತು ಹೆಚ್ಚಿದ ಬಳಕೆದಾರರ ತೃಪ್ತಿಗೆ ಅನುವಾದಿಸುತ್ತದೆ, ಇದು ಜಾಗತಿಕ ಮಾರುಕಟ್ಟೆಯಲ್ಲಿ ಆದಾಯದ ಮೇಲೆ ನೇರವಾಗಿ ಪರಿಣಾಮ ಬೀರುತ್ತದೆ.
ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಅನ್ನು ಪರಿಚಯಿಸುವುದು: ಬ್ರೌಸರ್ನ ಸೂಪರ್ಪವರ್
ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್, contain
ಪ್ರಾಪರ್ಟಿಯಿಂದ ನಿರ್ದಿಷ್ಟಪಡಿಸಲ್ಪಟ್ಟಿದೆ, ಇದು ಡೆವಲಪರ್ಗಳಿಗೆ ಒಂದು ನಿರ್ದಿಷ್ಟ ಎಲಿಮೆಂಟ್ ಮತ್ತು ಅದರ ವಿಷಯವು ಉಳಿದ ಡಾಕ್ಯುಮೆಂಟ್ನಿಂದ ಸ್ವತಂತ್ರವಾಗಿದೆ ಎಂದು ಬ್ರೌಸರ್ಗೆ ತಿಳಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುವ ಒಂದು ಶಕ್ತಿಯುತ ಯಾಂತ್ರಿಕತೆಯಾಗಿದೆ. ಹಾಗೆ ಮಾಡುವುದರಿಂದ, ಬ್ರೌಸರ್ ಸಾಮಾನ್ಯವಾಗಿ ಮಾಡಲಾಗದ ಕಾರ್ಯಕ್ಷಮತೆಯ ಆಪ್ಟಿಮೈಸೇಶನ್ಗಳನ್ನು ಮಾಡಬಹುದು. ಇದು ಮೂಲಭೂತವಾಗಿ ರೆಂಡರಿಂಗ್ ಎಂಜಿನ್ಗೆ ಹೇಳುತ್ತದೆ, "ಹೇ, ಪುಟದ ಈ ಭಾಗವು ಸ್ವಯಂ-ಒಳಗೊಂಡಿದೆ. ಅದರೊಳಗೆ ಏನಾದರೂ ಬದಲಾದರೆ ನೀವು ಸಂಪೂರ್ಣ ಡಾಕ್ಯುಮೆಂಟ್ನ ಲೇಔಟ್ ಅಥವಾ ಪೇಂಟ್ ಅನ್ನು ಮರು-ಮೌಲ್ಯಮಾಪನ ಮಾಡುವ ಅಗತ್ಯವಿಲ್ಲ."
ಇದನ್ನು ಸಂಕೀರ್ಣವಾದ ಕಾಂಪೊನೆಂಟ್ನ ಸುತ್ತಲೂ ಗಡಿ ಹಾಕಿದಂತೆ ಯೋಚಿಸಿ. ಆ ಕಾಂಪೊನೆಂಟ್ನೊಳಗೆ ಏನಾದರೂ ಬದಲಾದಾಗಲೆಲ್ಲಾ ಬ್ರೌಸರ್ ಸಂಪೂರ್ಣ ಪುಟವನ್ನು ಸ್ಕ್ಯಾನ್ ಮಾಡುವ ಬದಲು, ಯಾವುದೇ ಲೇಔಟ್ ಅಥವಾ ಪೇಂಟ್ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ಕೇವಲ ಆ ಕಾಂಪೊನೆಂಟ್ಗೆ ಸೀಮಿತಗೊಳಿಸಬಹುದು ಎಂದು ಅದಕ್ಕೆ ತಿಳಿದಿರುತ್ತದೆ. ಇದು ದುಬಾರಿ ಮರು-ಲೆಕ್ಕಾಚಾರಗಳ ವ್ಯಾಪ್ತಿಯನ್ನು ಗಮನಾರ್ಹವಾಗಿ ಕಡಿಮೆ ಮಾಡುತ್ತದೆ, ಇದು ವೇಗವಾದ ರೆಂಡರಿಂಗ್ ಸಮಯಗಳು ಮತ್ತು ಸುಗಮವಾದ ಬಳಕೆದಾರ ಇಂಟರ್ಫೇಸ್ಗೆ ಕಾರಣವಾಗುತ್ತದೆ.
contain
ಪ್ರಾಪರ್ಟಿಯು ಹಲವಾರು ಮೌಲ್ಯಗಳನ್ನು ಸ್ವೀಕರಿಸುತ್ತದೆ, ಪ್ರತಿಯೊಂದೂ ವಿಭಿನ್ನ ಮಟ್ಟದ ಕಂಟೇನ್ಮೆಂಟ್ ಅನ್ನು ಒದಗಿಸುತ್ತದೆ, ಡೆವಲಪರ್ಗಳಿಗೆ ತಮ್ಮ ನಿರ್ದಿಷ್ಟ ಬಳಕೆಯ ಪ್ರಕರಣಕ್ಕೆ ಅತ್ಯಂತ ಸೂಕ್ತವಾದ ಆಪ್ಟಿಮೈಸೇಶನ್ ಅನ್ನು ಆಯ್ಕೆ ಮಾಡಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ.
.my-contained-element {
contain: layout;
}
.another-element {
contain: paint;
}
.yet-another {
contain: size;
}
.combined-containment {
contain: content;
/* ಲೇಔಟ್, ಪೇಂಟ್, ಸೈಜ್ಗಾಗಿ ಶಾರ್ಟ್ಹ್ಯಾಂಡ್ */
}
.maximum-containment {
contain: strict;
/* ಲೇಔಟ್, ಪೇಂಟ್, ಸೈಜ್, ಸ್ಟೈಲ್ಗಾಗಿ ಶಾರ್ಟ್ಹ್ಯಾಂಡ್ */
}
contain
ಮೌಲ್ಯಗಳನ್ನು ಅರ್ಥೈಸಿಕೊಳ್ಳುವುದು
contain
ಪ್ರಾಪರ್ಟಿಯ ಪ್ರತಿಯೊಂದು ಮೌಲ್ಯವು ಒಂದು ರೀತಿಯ ಕಂಟೇನ್ಮೆಂಟ್ ಅನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸುತ್ತದೆ. ಪರಿಣಾಮಕಾರಿ ಆಪ್ಟಿಮೈಸೇಶನ್ಗಾಗಿ ಅವುಗಳ ವೈಯಕ್ತಿಕ ಪರಿಣಾಮಗಳನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ನಿರ್ಣಾಯಕವಾಗಿದೆ.
contain: layout;
ಒಂದು ಎಲಿಮೆಂಟ್ಗೆ contain: layout;
ಇದ್ದಾಗ, ಎಲಿಮೆಂಟ್ನ ಮಕ್ಕಳ ಲೇಔಟ್ (ಅವುಗಳ ಸ್ಥಾನಗಳು ಮತ್ತು ಗಾತ್ರಗಳು) ಎಲಿಮೆಂಟ್ನ ಹೊರಗೆ ಯಾವುದಕ್ಕೂ ಪರಿಣಾಮ ಬೀರುವುದಿಲ್ಲ ಎಂದು ಬ್ರೌಸರ್ಗೆ ತಿಳಿದಿರುತ್ತದೆ. ಇದಕ್ಕೆ ವಿರುದ್ಧವಾಗಿ, ಎಲಿಮೆಂಟ್ನ ಹೊರಗಿನ ವಸ್ತುಗಳ ಲೇಔಟ್ ಅದರ ಮಕ್ಕಳ ಲೇಔಟ್ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುವುದಿಲ್ಲ.
- ಪ್ರಯೋಜನಗಳು: ಇದು ಮುಖ್ಯವಾಗಿ ರಿಫ್ಲೋಗಳ ವ್ಯಾಪ್ತಿಯನ್ನು ಸೀಮಿತಗೊಳಿಸಲು ಉಪಯುಕ್ತವಾಗಿದೆ. ಒಳಗೊಂಡಿರುವ ಎಲಿಮೆಂಟ್ನೊಳಗೆ ಏನಾದರೂ ಬದಲಾದರೆ, ಬ್ರೌಸರ್ ಕೇವಲ ಆ ಎಲಿಮೆಂಟ್ನೊಳಗಿನ ಲೇಔಟ್ ಅನ್ನು ಮರು-ಲೆಕ್ಕಾಚಾರ ಮಾಡಬೇಕಾಗುತ್ತದೆ, ಸಂಪೂರ್ಣ ಪುಟವನ್ನಲ್ಲ.
- ಬಳಕೆಯ ಪ್ರಕರಣಗಳು: ಒಡಹುಟ್ಟಿದವರು ಅಥವಾ ಪೂರ್ವಜರ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರದೆ ಆಗಾಗ್ಗೆ ತಮ್ಮ ಆಂತರಿಕ ರಚನೆಯನ್ನು ನವೀಕರಿಸಬಹುದಾದ ಸ್ವತಂತ್ರ ಯುಐ ಕಾಂಪೊನೆಂಟ್ಗಳಿಗೆ ಸೂಕ್ತವಾಗಿದೆ. ಡೈನಾಮಿಕ್ ಕಂಟೆಂಟ್ ಬ್ಲಾಕ್ಗಳು, ಚಾಟ್ ವಿಜೆಟ್ಗಳು, ಅಥವಾ ಡ್ಯಾಶ್ಬೋರ್ಡ್ನ ನಿರ್ದಿಷ್ಟ ವಿಭಾಗಗಳನ್ನು ಯೋಚಿಸಿ, ಇವುಗಳನ್ನು JavaScript ಮೂಲಕ ನವೀಕರಿಸಲಾಗುತ್ತದೆ. ಇದು ವರ್ಚುವಲೈಸ್ಡ್ ಪಟ್ಟಿಗಳಿಗೆ ವಿಶೇಷವಾಗಿ ಪ್ರಯೋಜನಕಾರಿಯಾಗಿದೆ, ಅಲ್ಲಿ ಯಾವುದೇ ಸಮಯದಲ್ಲಿ ಎಲಿಮೆಂಟ್ಗಳ ಉಪವಿಭಾಗವನ್ನು ಮಾತ್ರ ರೆಂಡರ್ ಮಾಡಲಾಗುತ್ತದೆ, ಮತ್ತು ಅವುಗಳ ಲೇಔಟ್ ಬದಲಾವಣೆಗಳು ಪೂರ್ಣ ಡಾಕ್ಯುಮೆಂಟ್ ರಿಫ್ಲೋವನ್ನು ಪ್ರಚೋದಿಸಬಾರದು.
ಉದಾಹರಣೆ: ಡೈನಾಮಿಕ್ ಸುದ್ದಿ ಫೀಡ್ ಐಟಂ
<style>
.news-feed-item {
border: 1px solid #ddd;
padding: 15px;
margin-bottom: 10px;
contain: layout;
/* ಈ ಐಟಂನೊಳಗಿನ ಬದಲಾವಣೆಗಳು ಜಾಗತಿಕ ರಿಫ್ಲೋಗಳನ್ನು ಪ್ರಚೋದಿಸುವುದಿಲ್ಲ ಎಂದು ಖಚಿತಪಡಿಸುತ್ತದೆ */
}
.news-feed-item h3 { margin-top: 0; }
.news-feed-item .actions { text-align: right; }
</style>
<div class="news-feed-container">
<div class="news-feed-item">
<h3>ಶೀರ್ಷಿಕೆ 1</h3>
<p>ಸುದ್ದಿ ಐಟಂನ ಸಂಕ್ಷಿಪ್ತ ವಿವರಣೆ. ಇದು ವಿಸ್ತರಿಸಬಹುದು ಅಥವಾ ಕುಗ್ಗಬಹುದು.</p>
<div class="actions">
<button>ಇನ್ನಷ್ಟು ಓದಿ</button>
</div>
</div>
<div class="news-feed-item">
<h3>ಶೀರ್ಷಿಕೆ 2</h3>
<p>ಮತ್ತೊಂದು ಸುದ್ದಿ. ಇದು ಆಗಾಗ್ಗೆ ನವೀಕರಣಗೊಳ್ಳುವುದನ್ನು ಕಲ್ಪಿಸಿಕೊಳ್ಳಿ.</p>
<div class="actions">
<button>ಇನ್ನಷ್ಟು ಓದಿ</button>
</div>
</div>
</div>
contain: paint;
ಈ ಮೌಲ್ಯವು ಎಲಿಮೆಂಟ್ನ ವಂಶಸ್ಥರು ಎಲಿಮೆಂಟ್ನ ಗಡಿಗಳ ಹೊರಗೆ ಪ್ರದರ್ಶಿಸಲ್ಪಡುವುದಿಲ್ಲ ಎಂದು ಘೋಷಿಸುತ್ತದೆ. ವಂಶಸ್ಥರಿಂದ ಯಾವುದೇ ವಿಷಯವು ಎಲಿಮೆಂಟ್ನ ಬಾಕ್ಸ್ನ ಆಚೆಗೆ ವಿಸ್ತರಿಸಿದರೆ, ಅದನ್ನು ಕ್ಲಿಪ್ ಮಾಡಲಾಗುತ್ತದೆ (overflow: hidden;
ಅನ್ವಯಿಸಿದಂತೆ).
- ಪ್ರಯೋಜನಗಳು: ಒಳಗೊಂಡಿರುವ ಎಲಿಮೆಂಟ್ನ ಹೊರಗೆ ರಿಪೇಂಟ್ಗಳನ್ನು ತಡೆಯುತ್ತದೆ. ಒಳಗಿನ ವಿಷಯ ಬದಲಾದರೆ, ಬ್ರೌಸರ್ ಕೇವಲ ಆ ಎಲಿಮೆಂಟ್ನೊಳಗಿನ ಪ್ರದೇಶವನ್ನು ಮಾತ್ರ ರಿಪೇಂಟ್ ಮಾಡಬೇಕಾಗುತ್ತದೆ, ಇದು ರಿಪೇಂಟ್ ವೆಚ್ಚವನ್ನು ಗಮನಾರ್ಹವಾಗಿ ಕಡಿಮೆ ಮಾಡುತ್ತದೆ. ಇದು ಪರೋಕ್ಷವಾಗಿ ಅದರೊಳಗಿನ
position: fixed
ಅಥವಾposition: absolute
ಹೊಂದಿರುವ ಎಲಿಮೆಂಟ್ಗಳಿಗೆ ಹೊಸ ಕಂಟೇನಿಂಗ್ ಬ್ಲಾಕ್ ಅನ್ನು ಸಹ ರಚಿಸುತ್ತದೆ. - ಬಳಕೆಯ ಪ್ರಕರಣಗಳು: ಸ್ಕ್ರೋಲ್ ಮಾಡಬಹುದಾದ ಪ್ರದೇಶಗಳು, ಆಫ್-ಸ್ಕ್ರೀನ್ ಎಲಿಮೆಂಟ್ಗಳು (ಗುಪ್ತ ಮಾಡಲ್ಗಳು ಅಥವಾ ಸೈಡ್ಬಾರ್ಗಳಂತಹ), ಅಥವಾ ಕ್ಯಾರೌಸೆಲ್ಗಳಿಗೆ ಸೂಕ್ತವಾಗಿದೆ, ಅಲ್ಲಿ ಎಲಿಮೆಂಟ್ಗಳು ವೀಕ್ಷಣೆಯೊಳಗೆ ಮತ್ತು ಹೊರಗೆ ಜಾರುತ್ತವೆ. ಪೇಂಟ್ ಅನ್ನು ಕಂಟೇನ್ ಮಾಡುವ ಮೂಲಕ, ಬ್ರೌಸರ್ ಒಳಗಿನಿಂದ ಪಿಕ್ಸೆಲ್ಗಳು ಹೊರಬಂದು ಡಾಕ್ಯುಮೆಂಟ್ನ ಇತರ ಭಾಗಗಳ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುವ ಬಗ್ಗೆ ಚಿಂತಿಸಬೇಕಾಗಿಲ್ಲ. ಇದು ಅನಗತ್ಯ ಸ್ಕ್ರೋಲ್ಬಾರ್ ಸಮಸ್ಯೆಗಳು ಅಥವಾ ರೆಂಡರಿಂಗ್ ಆರ್ಟಿಫ್ಯಾಕ್ಟ್ಗಳನ್ನು ತಡೆಯಲು ವಿಶೇಷವಾಗಿ ಉಪಯುಕ್ತವಾಗಿದೆ.
ಉದಾಹರಣೆ: ಸ್ಕ್ರೋಲ್ ಮಾಡಬಹುದಾದ ಕಾಮೆಂಟ್ ವಿಭಾಗ
<style>
.comment-section {
border: 1px solid #ccc;
height: 200px;
overflow-y: scroll;
contain: paint;
/* ಕಾಮೆಂಟ್ಗಳು ನವೀಕರಣಗೊಂಡರೂ, ಈ ಬಾಕ್ಸ್ನೊಳಗಿನ ವಿಷಯವನ್ನು ಮಾತ್ರ ರಿಪೇಂಟ್ ಮಾಡಿ */
}
.comment-item { padding: 5px; border-bottom: 1px dotted #eee; }
</style>
<div class="comment-section">
<div class="comment-item">ಕಾಮೆಂಟ್ 1: ಲೋರೆಮ್ ಇಪ್ಸಮ್ ಡೋಲರ್ ಸಿಟ್ ಅಮೆಟ್.</div>
<div class="comment-item">ಕಾಮೆಂಟ್ 2: ಕಾನ್ಸೆಕ್ಟೆಟರ್ ಅಡಿಪಿಸ್ಕಿಂಗ್ ಎಲಿಟ್.</div>
<!-- ... ಇನ್ನೂ ಅನೇಕ ಕಾಮೆಂಟ್ಗಳು ... -->
<div class="comment-item">ಕಾಮೆಂಟ್ N: ಸೆಡ್ ಡು ಇಯುಸ್ಮೋಡ್ ಟೆಂಪರ್ ಇನ್ಸಿಡಿಡಂಟ್ ಯುಟ್ ಲೇಬೋರ್.</div>
</div>
contain: size;
contain: size;
ಅನ್ನು ಅನ್ವಯಿಸಿದಾಗ, ಬ್ರೌಸರ್ ಎಲಿಮೆಂಟ್ ಅನ್ನು ಸ್ಥಿರ, ಬದಲಾಗದ ಗಾತ್ರವನ್ನು ಹೊಂದಿರುವಂತೆ ಪರಿಗಣಿಸುತ್ತದೆ, ಅದರ ನಿಜವಾದ ವಿಷಯವು ಬೇರೆ ರೀತಿಯಲ್ಲಿ ಸೂಚಿಸಬಹುದಾದರೂ ಸಹ. ಒಳಗೊಂಡಿರುವ ಎಲಿಮೆಂಟ್ನ ಆಯಾಮಗಳು ಅದರ ವಿಷಯ ಅಥವಾ ಅದರ ಮಕ್ಕಳಿಂದ ಪ್ರಭಾವಿತವಾಗುವುದಿಲ್ಲ ಎಂದು ಬ್ರೌಸರ್ ಭಾವಿಸುತ್ತದೆ. ಇದು ಬ್ರೌಸರ್ಗೆ ಒಳಗೊಂಡಿರುವ ಎಲಿಮೆಂಟ್ನ ಸುತ್ತಲಿನ ಎಲಿಮೆಂಟ್ಗಳನ್ನು ಅವುಗಳ ವಿಷಯದ ಗಾತ್ರವನ್ನು ತಿಳಿಯದೆ ಲೇಔಟ್ ಮಾಡಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಇದಕ್ಕೆ ಎಲಿಮೆಂಟ್ಗೆ ಸ್ಪಷ್ಟವಾದ ಆಯಾಮಗಳು (width
, height
) ಇರಬೇಕು ಅಥವಾ ಇತರ ವಿಧಾನಗಳಿಂದ ಗಾತ್ರವನ್ನು ನಿರ್ಧರಿಸಬೇಕು (ಉದಾಹರಣೆಗೆ, ಅದರ ಪೋಷಕನ ಮೇಲೆ ಫ್ಲೆಕ್ಸ್ಬಾಕ್ಸ್/ಗ್ರಿಡ್ ಪ್ರಾಪರ್ಟಿಗಳನ್ನು ಬಳಸಿ).
- ಪ್ರಯೋಜನಗಳು: ಅನಗತ್ಯ ಲೇಔಟ್ ಮರು-ಲೆಕ್ಕಾಚಾರಗಳನ್ನು ತಪ್ಪಿಸಲು ನಿರ್ಣಾಯಕವಾಗಿದೆ. ಒಂದು ಎಲಿಮೆಂಟ್ನ ಗಾತ್ರವು ಸ್ಥಿರವಾಗಿದೆ ಎಂದು ಬ್ರೌಸರ್ಗೆ ತಿಳಿದಿದ್ದರೆ, ಅದು ಒಳಗಿನದನ್ನು ನೋಡದೆ ಸುತ್ತಮುತ್ತಲಿನ ಎಲಿಮೆಂಟ್ಗಳ ಲೇಔಟ್ ಅನ್ನು ಉತ್ತಮಗೊಳಿಸಬಹುದು. ಇದು ಅನಿರೀಕ್ಷಿತ ಲೇಔಟ್ ಶಿಫ್ಟ್ಗಳನ್ನು ತಡೆಯಲು ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿಯಾಗಿದೆ (ಒಂದು ಪ್ರಮುಖ ಕೋರ್ ವೆಬ್ ವೈಟಲ್ ಮೆಟ್ರಿಕ್: ಕ್ಯುಮುಲೇಟಿವ್ ಲೇಔಟ್ ಶಿಫ್ಟ್, ಸಿಎಲ್ಎಸ್).
- ಬಳಕೆಯ ಪ್ರಕರಣಗಳು: ವರ್ಚುವಲೈಸ್ಡ್ ಪಟ್ಟಿಗಳಿಗೆ ಪರಿಪೂರ್ಣವಾಗಿದೆ, ಅಲ್ಲಿ ಪ್ರತಿಯೊಂದು ಐಟಂನ ಗಾತ್ರವು ತಿಳಿದಿರುತ್ತದೆ ಅಥವಾ ಅಂದಾಜಿಸಲಾಗಿರುತ್ತದೆ, ಇದು ಬ್ರೌಸರ್ಗೆ ಪೂರ್ಣ ಪಟ್ಟಿಯ ಎತ್ತರವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡದೆ ಕೇವಲ ಗೋಚರಿಸುವ ಐಟಂಗಳನ್ನು ಮಾತ್ರ ರೆಂಡರ್ ಮಾಡಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಲೋಡ್ ಮಾಡಲಾದ ವಿಷಯವನ್ನು ಲೆಕ್ಕಿಸದೆ ತಮ್ಮ ಆಯಾಮಗಳು ಸ್ಥಿರವಾಗಿರುವ ಇಮೇಜ್ ಪ್ಲೇಸ್ಹೋಲ್ಡರ್ಗಳು ಅಥವಾ ಜಾಹೀರಾತು ಸ್ಲಾಟ್ಗಳಿಗೂ ಸಹ ಉಪಯುಕ್ತವಾಗಿದೆ.
ಉದಾಹರಣೆ: ಪ್ಲೇಸ್ಹೋಲ್ಡರ್ ವಿಷಯದೊಂದಿಗೆ ವರ್ಚುವಲೈಸ್ಡ್ ಪಟ್ಟಿ ಐಟಂ
<style>
.virtual-list-item {
height: 50px; /* 'size' ಕಂಟೇನ್ಮೆಂಟ್ಗಾಗಿ ಸ್ಪಷ್ಟವಾದ ಎತ್ತರವು ನಿರ್ಣಾಯಕವಾಗಿದೆ */
border-bottom: 1px solid #eee;
padding: 10px;
contain: size;
/* ಬ್ರೌಸರ್ ಈ ಐಟಂನ ಎತ್ತರವನ್ನು ಒಳಗೆ ನೋಡದೆ ತಿಳಿದುಕೊಳ್ಳುತ್ತದೆ */
}
</style>
<div class="virtual-list-container">
<div class="virtual-list-item">ಐಟಂ 1 ವಿಷಯ</div>
<div class="virtual-list-item">ಐಟಂ 2 ವಿಷಯ</div>
<!-- ... ಡೈನಾಮಿಕ್ ಆಗಿ ಲೋಡ್ ಮಾಡಲಾದ ಇನ್ನೂ ಅನೇಕ ಐಟಂಗಳು ... -->
</div>
contain: style;
ಇದು ಬಹುಶಃ ಅತ್ಯಂತ ವಿಶಿಷ್ಟವಾದ ಕಂಟೇನ್ಮೆಂಟ್ ಪ್ರಕಾರವಾಗಿದೆ. ಇದು ಎಲಿಮೆಂಟ್ನ ವಂಶಸ್ಥರಿಗೆ ಅನ್ವಯಿಸಲಾದ ಸ್ಟೈಲ್ಗಳು ಎಲಿಮೆಂಟ್ನ ಹೊರಗೆ ಯಾವುದಕ್ಕೂ ಪರಿಣಾಮ ಬೀರುವುದಿಲ್ಲ ಎಂದು ಸೂಚಿಸುತ್ತದೆ. ಇದು ಮುಖ್ಯವಾಗಿ CSS ಕೌಂಟರ್ಗಳಂತಹ (counter-increment
, counter-reset
) ಎಲಿಮೆಂಟ್ನ ಸಬ್ಟ್ರೀಯ ಆಚೆಗೆ ಪರಿಣಾಮಗಳನ್ನು ಬೀರಬಹುದಾದ ಪ್ರಾಪರ್ಟಿಗಳಿಗೆ ಅನ್ವಯಿಸುತ್ತದೆ.
- ಪ್ರಯೋಜನಗಳು: ಸ್ಟೈಲ್ ಮರು-ಲೆಕ್ಕಾಚಾರಗಳು DOM ಟ್ರೀಯಲ್ಲಿ ಮೇಲಕ್ಕೆ ಹರಡುವುದನ್ನು ತಡೆಯುತ್ತದೆ, ಆದರೂ ಸಾಮಾನ್ಯ ಕಾರ್ಯಕ್ಷಮತೆಯ ಮೇಲೆ ಇದರ ಪ್ರಾಯೋಗಿಕ ಪರಿಣಾಮವು `layout` ಅಥವಾ `paint` ಗಿಂತ ಕಡಿಮೆ ಮಹತ್ವದ್ದಾಗಿದೆ.
- ಬಳಕೆಯ ಪ್ರಕರಣಗಳು: ಮುಖ್ಯವಾಗಿ CSS ಕೌಂಟರ್ಗಳು ಅಥವಾ ಜಾಗತಿಕ ಪರಿಣಾಮಗಳನ್ನು ಬೀರಬಹುದಾದ ಇತರ ಗೂಢ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಒಳಗೊಂಡ ಸನ್ನಿವೇಶಗಳಿಗೆ. ವಿಶಿಷ್ಟ ವೆಬ್ ಕಾರ್ಯಕ್ಷಮತೆ ಆಪ್ಟಿಮೈಸೇಶನ್ಗೆ ಕಡಿಮೆ ಸಾಮಾನ್ಯವಾಗಿದೆ, ಆದರೆ ನಿರ್ದಿಷ್ಟ, ಸಂಕೀರ್ಣ ಸ್ಟೈಲಿಂಗ್ ಸಂದರ್ಭಗಳಲ್ಲಿ ಮೌಲ್ಯಯುತವಾಗಿದೆ.
ಉದಾಹರಣೆ: ಸ್ವತಂತ್ರ ಕೌಂಟರ್ ವಿಭಾಗ
<style>
.independent-section {
border: 1px solid blue;
padding: 10px;
contain: style;
/* ಇಲ್ಲಿರುವ ಕೌಂಟರ್ಗಳು ಜಾಗತಿಕ ಕೌಂಟರ್ಗಳ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುವುದಿಲ್ಲ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ */
counter-reset: local-item-counter;
}
.independent-section p::before {
counter-increment: local-item-counter;
content: "ಐಟಂ " counter(local-item-counter) ": ";
}
</style>
<div class="independent-section">
<p>ಮೊದಲ ಪಾಯಿಂಟ್.</p>
<p>ಎರಡನೇ ಪಾಯಿಂಟ್.</p>
</div>
<div class="global-section">
<p>ಇದು ಮೇಲಿನ ಕೌಂಟರ್ನಿಂದ ಪ್ರಭಾವಿತವಾಗಬಾರದು.</p>
</div>
contain: content;
ಇದು contain: layout paint size;
ಗಾಗಿ ಒಂದು ಶಾರ್ಟ್ಹ್ಯಾಂಡ್ ಆಗಿದೆ. `style` ಪ್ರತ್ಯೇಕತೆ ಇಲ್ಲದೆ ನೀವು ಬಲವಾದ ಮಟ್ಟದ ಕಂಟೇನ್ಮೆಂಟ್ ಬಯಸಿದಾಗ ಇದು ಸಾಮಾನ್ಯವಾಗಿ ಬಳಸುವ ಮೌಲ್ಯವಾಗಿದೆ. ಇದು ಹೆಚ್ಚಾಗಿ ಸ್ವತಂತ್ರವಾಗಿರುವ ಕಾಂಪೊನೆಂಟ್ಗಳಿಗೆ ಉತ್ತಮ ಸಾಮಾನ್ಯ-ಉದ್ದೇಶದ ಕಂಟೇನ್ಮೆಂಟ್ ಆಗಿದೆ.
- ಪ್ರಯೋಜನಗಳು: ಲೇಔಟ್, ಪೇಂಟ್, ಮತ್ತು ಸೈಜ್ ಕಂಟೇನ್ಮೆಂಟ್ನ ಶಕ್ತಿಯನ್ನು ಸಂಯೋಜಿಸುತ್ತದೆ, ಸ್ವತಂತ್ರ ಕಾಂಪೊನೆಂಟ್ಗಳಿಗೆ ಗಮನಾರ್ಹ ಕಾರ್ಯಕ್ಷಮತೆ ಲಾಭಗಳನ್ನು ನೀಡುತ್ತದೆ.
- ಬಳಕೆಯ ಪ್ರಕರಣಗಳು: ಅಕಾರ್ಡಿಯನ್ಗಳು, ಟ್ಯಾಬ್ಗಳು, ಗ್ರಿಡ್ನಲ್ಲಿನ ಕಾರ್ಡ್ಗಳು, ಅಥವಾ ಆಗಾಗ್ಗೆ ನವೀಕರಿಸಬಹುದಾದ ಪಟ್ಟಿಯಲ್ಲಿನ ವೈಯಕ್ತಿಕ ಐಟಂಗಳು ಮುಂತಾದ ಯಾವುದೇ ವಿಭಿನ್ನ, ಸ್ವಯಂ-ಒಳಗೊಂಡಿರುವ ಯುಐ ವಿಜೆಟ್ ಅಥವಾ ಕಾಂಪೊನೆಂಟ್ಗೆ ವ್ಯಾಪಕವಾಗಿ ಅನ್ವಯಿಸಬಹುದು.
ಉದಾಹರಣೆ: ಮರುಬಳಕೆ ಮಾಡಬಹುದಾದ ಉತ್ಪನ್ನ ಕಾರ್ಡ್
<style>
.product-card {
border: 1px solid #eee;
padding: 15px;
margin: 10px;
width: 250px; /* 'size' ಕಂಟೇನ್ಮೆಂಟ್ಗಾಗಿ ಸ್ಪಷ್ಟವಾದ ಅಗಲ */
display: inline-block;
vertical-align: top;
contain: content;
/* ಲೇಔಟ್, ಪೇಂಟ್, ಮತ್ತು ಸೈಜ್ ಪ್ರತ್ಯೇಕತೆ */
}
.product-card img { max-width: 100%; height: auto; }
.product-card h3 { font-size: 1.2em; }
.product-card .price { font-weight: bold; color: green; }
</style>
<div class="product-card">
<img src="product-image-1.jpg" alt="ಉತ್ಪನ್ನ 1">
<h3>ಅದ್ಭುತ ಗ್ಯಾಜೆಟ್ ಪ್ರೊ</h3>
<p class="price">$199.99</p>
<button>ಕಾರ್ಟ್ಗೆ ಸೇರಿಸಿ</button>
</div>
<div class="product-card">
<img src="product-image-2.jpg" alt="ಉತ್ಪನ್ನ 2">
<h3>ಸೂಪರ್ ವಿಜೆಟ್ ಎಲೈಟ್</h3&n>
<p class="price">$49.95</p>
<button>ಕಾರ್ಟ್ಗೆ ಸೇರಿಸಿ</button>
</div>
contain: strict;
ಇದು ಅತ್ಯಂತ ಸಮಗ್ರವಾದ ಕಂಟೇನ್ಮೆಂಟ್ ಆಗಿದೆ, ಇದು contain: layout paint size style;
ಗಾಗಿ ಶಾರ್ಟ್ಹ್ಯಾಂಡ್ ಆಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ಇದು ಸಾಧ್ಯವಿರುವ ಅತ್ಯಂತ ಬಲವಾದ ಪ್ರತ್ಯೇಕತೆಯನ್ನು ಸೃಷ್ಟಿಸುತ್ತದೆ, ಒಳಗೊಂಡಿರುವ ಎಲಿಮೆಂಟ್ ಅನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಸಂಪೂರ್ಣವಾಗಿ ಸ್ವತಂತ್ರವಾದ ರೆಂಡರಿಂಗ್ ಸಂದರ್ಭವಾಗಿಸುತ್ತದೆ.
- ಪ್ರಯೋಜನಗಳು: ಎಲ್ಲಾ ನಾಲ್ಕು ರೀತಿಯ ರೆಂಡರಿಂಗ್ ಲೆಕ್ಕಾಚಾರಗಳನ್ನು ಪ್ರತ್ಯೇಕಿಸುವ ಮೂಲಕ ಗರಿಷ್ಠ ಕಾರ್ಯಕ್ಷಮತೆ ಪ್ರಯೋಜನಗಳನ್ನು ನೀಡುತ್ತದೆ.
- ಬಳಕೆಯ ಪ್ರಕರಣಗಳು: ನಿಜವಾಗಿಯೂ ಸ್ವಯಂ-ಒಳಗೊಂಡಿರುವ ಮತ್ತು ಆಂತರಿಕ ಬದಲಾವಣೆಗಳು ಪುಟದ ಉಳಿದ ಭಾಗದ ಮೇಲೆ ಸಂಪೂರ್ಣವಾಗಿ ಪರಿಣಾಮ ಬೀರಬಾರದಾದ ಅತ್ಯಂತ ಸಂಕೀರ್ಣ, ಡೈನಾಮಿಕ್ ಕಾಂಪೊನೆಂಟ್ಗಳಿಗೆ ಉತ್ತಮವಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ. ಭಾರೀ JavaScript-ಚಾಲಿತ ವಿಜೆಟ್ಗಳು, ಸಂವಾದಾತ್ಮಕ ನಕ್ಷೆಗಳು, ಅಥವಾ ದೃಷ್ಟಿಗೋಚರವಾಗಿ ವಿಭಿನ್ನ ಮತ್ತು ಕ್ರಿಯಾತ್ಮಕವಾಗಿ ಮುಖ್ಯ ಪುಟದ ಹರಿವಿನಿಂದ ಪ್ರತ್ಯೇಕವಾಗಿರುವ ಎಂಬೆಡೆಡ್ ಕಾಂಪೊನೆಂಟ್ಗಳಿಗಾಗಿ ಇದನ್ನು ಪರಿಗಣಿಸಿ. ಎಚ್ಚರಿಕೆಯಿಂದ ಬಳಸಿ, ಏಕೆಂದರೆ ಇದು ಬಲವಾದ ಪರಿಣಾಮಗಳನ್ನು ಹೊಂದಿದೆ, ವಿಶೇಷವಾಗಿ ಸೂಚ್ಯ ಗಾತ್ರದ ಅವಶ್ಯಕತೆಗಳಿಗೆ ಸಂಬಂಧಿಸಿದಂತೆ.
ಉದಾಹರಣೆ: ಸಂಕೀರ್ಣ ಸಂವಾದಾತ್ಮಕ ನಕ್ಷೆ ವಿಜೆಟ್
<style>
.map-widget {
width: 600px;
height: 400px;
border: 1px solid blue;
overflow: hidden;
contain: strict;
/* ಸಂಕೀರ್ಣ, ಸಂವಾದಾತ್ಮಕ ಕಾಂಪೊನೆಂಟ್ಗಾಗಿ ಪೂರ್ಣ ಕಂಟೇನ್ಮೆಂಟ್ */
}
</style>
<div class="map-widget">
<!-- ಸಂಕೀರ್ಣ ನಕ್ಷೆ ರೆಂಡರಿಂಗ್ ಲಾಜಿಕ್ (ಉದಾ., Leaflet.js, Google Maps API) -->
<div class="map-canvas"></div>
<div class="map-controls"><button>ಝೂಮ್ ಇನ್</button></div>
</div>
contain: none;
ಇದು ಡೀಫಾಲ್ಟ್ ಮೌಲ್ಯವಾಗಿದ್ದು, ಯಾವುದೇ ಕಂಟೇನ್ಮೆಂಟ್ ಇಲ್ಲ ಎಂದು ಸೂಚಿಸುತ್ತದೆ. ಎಲಿಮೆಂಟ್ ಸಾಮಾನ್ಯ ರೀತಿಯಲ್ಲಿ ವರ್ತಿಸುತ್ತದೆ, ಮತ್ತು ಅದರೊಳಗಿನ ಬದಲಾವಣೆಗಳು ಸಂಪೂರ್ಣ ಡಾಕ್ಯುಮೆಂಟ್ನ ರೆಂಡರಿಂಗ್ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರಬಹುದು.
ಪ್ರಾಯೋಗಿಕ ಅನ್ವಯಗಳು ಮತ್ತು ಜಾಗತಿಕ ಬಳಕೆಯ ಪ್ರಕರಣಗಳು
ಸಿದ್ಧಾಂತವನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಒಂದು ವಿಷಯ; ಅದನ್ನು ನೈಜ-ಪ್ರಪಂಚದ, ಜಾಗತಿಕವಾಗಿ ಪ್ರವೇಶಿಸಬಹುದಾದ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳಲ್ಲಿ ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಅನ್ವಯಿಸುವುದು ಇನ್ನೊಂದು ವಿಷಯ. ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಗಮನಾರ್ಹ ಕಾರ್ಯಕ್ಷಮತೆ ಪ್ರಯೋಜನಗಳನ್ನು ನೀಡಬಹುದಾದ ಕೆಲವು ಪ್ರಮುಖ ಸನ್ನಿವೇಶಗಳು ಇಲ್ಲಿವೆ:
ವರ್ಚುವಲೈಸ್ಡ್ ಪಟ್ಟಿಗಳು/ಅನಂತ ಸ್ಕ್ರಾಲ್
ಸಾಮಾಜಿಕ ಮಾಧ್ಯಮ ಫೀಡ್ಗಳಿಂದ ಹಿಡಿದು ಇ-ಕಾಮರ್ಸ್ ಉತ್ಪನ್ನ ಪಟ್ಟಿಗಳವರೆಗೆ, ಅನೇಕ ಆಧುನಿಕ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಅಪಾರ ಪ್ರಮಾಣದ ಡೇಟಾವನ್ನು ಪ್ರದರ್ಶಿಸಲು ವರ್ಚುವಲೈಸ್ಡ್ ಪಟ್ಟಿಗಳು ಅಥವಾ ಅನಂತ ಸ್ಕ್ರೋಲಿಂಗ್ ಅನ್ನು ಬಳಸಿಕೊಳ್ಳುತ್ತವೆ. DOM ನಲ್ಲಿ ಸಾವಿರಾರು ಐಟಂಗಳನ್ನು ರೆಂಡರ್ ಮಾಡುವ ಬದಲು (ಇದು ಬೃಹತ್ ಕಾರ್ಯಕ್ಷಮತೆಯ ಅಡಚಣೆಯಾಗುತ್ತದೆ), ಕೇವಲ ಗೋಚರಿಸುವ ಐಟಂಗಳು ಮತ್ತು ವ್ಯೂಪೋರ್ಟ್ನ ಮೇಲೆ ಮತ್ತು ಕೆಳಗೆ ಕೆಲವು ಬಫರ್ ಐಟಂಗಳನ್ನು ಮಾತ್ರ ರೆಂಡರ್ ಮಾಡಲಾಗುತ್ತದೆ. ಬಳಕೆದಾರರು ಸ್ಕ್ರಾಲ್ ಮಾಡಿದಂತೆ, ಹೊಸ ಐಟಂಗಳನ್ನು ಬದಲಾಯಿಸಲಾಗುತ್ತದೆ, ಮತ್ತು ಹಳೆಯ ಐಟಂಗಳನ್ನು ತೆಗೆದುಹಾಕಲಾಗುತ್ತದೆ.
- ಸಮಸ್ಯೆ: ವರ್ಚುವಲೈಸೇಶನ್ನೊಂದಿಗೆ ಸಹ, ವೈಯಕ್ತಿಕ ಪಟ್ಟಿ ಐಟಂಗಳಿಗೆ ಬದಲಾವಣೆಗಳು (ಉದಾ., ಚಿತ್ರ ಲೋಡ್ ಆಗುವುದು, ಪಠ್ಯ ವಿಸ್ತರಿಸುವುದು, ಅಥವಾ ಬಳಕೆದಾರರ ಸಂವಹನವು 'ಲೈಕ್' ಎಣಿಕೆಯನ್ನು ನವೀಕರಿಸುವುದು) ಇನ್ನೂ ಸಂಪೂರ್ಣ ಪಟ್ಟಿ ಕಂಟೇನರ್ನ ಅಥವಾ ವಿಶಾಲವಾದ ಡಾಕ್ಯುಮೆಂಟ್ನ ಅನಗತ್ಯ ರಿಫ್ಲೋಗಳು ಅಥವಾ ರಿಪೇಂಟ್ಗಳನ್ನು ಪ್ರಚೋದಿಸಬಹುದು.
- ಕಂಟೇನ್ಮೆಂಟ್ನೊಂದಿಗೆ ಪರಿಹಾರ: ಪ್ರತಿ ವೈಯಕ್ತಿಕ ಪಟ್ಟಿ ಐಟಂಗೆ
contain: layout size;
(ಅಥವಾ ಪೇಂಟ್ ಪ್ರತ್ಯೇಕತೆಯೂ ಬೇಕಾದರೆcontain: content;
) ಅನ್ನು ಅನ್ವಯಿಸುವುದು. ಇದು ಪ್ರತಿ ಐಟಂನ ಆಯಾಮಗಳು ಮತ್ತು ಆಂತರಿಕ ಲೇಔಟ್ ಬದಲಾವಣೆಗಳು ಅದರ ಒಡಹುಟ್ಟಿದವರ ಅಥವಾ ಪೋಷಕ ಕಂಟೇನರ್ನ ಗಾತ್ರದ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುವುದಿಲ್ಲ ಎಂದು ಬ್ರೌಸರ್ಗೆ ಹೇಳುತ್ತದೆ. ಕಂಟೇನರ್ಗೆ, ಅದರ ಗಾತ್ರವು ಸ್ಕ್ರಾಲ್ ಸ್ಥಾನವನ್ನು ಅವಲಂಬಿಸಿ ಬದಲಾದರೆcontain: layout;
ಸೂಕ್ತವಾಗಿರಬಹುದು. - ಜಾಗತಿಕ ಪ್ರಸ್ತುತತೆ: ಜಾಗತಿಕ ಬಳಕೆದಾರರ ನೆಲೆಯನ್ನು ಗುರಿಯಾಗಿಸಿಕೊಂಡು ವಿಷಯ-ಭಾರೀ ಸೈಟ್ಗಳಿಗೆ ಇದು ಸಂಪೂರ್ಣವಾಗಿ ನಿರ್ಣಾಯಕವಾಗಿದೆ. ಹಳೆಯ ಸಾಧನಗಳು ಅಥವಾ ಸೀಮಿತ ನೆಟ್ವರ್ಕ್ ಪ್ರವೇಶವಿರುವ ಪ್ರದೇಶಗಳಲ್ಲಿನ ಬಳಕೆದಾರರು ಹೆಚ್ಚು ಸುಗಮವಾದ ಸ್ಕ್ರೋಲಿಂಗ್ ಮತ್ತು ಕಡಿಮೆ ಜ್ಯಾಂಕ್ ಕ್ಷಣಗಳನ್ನು ಅನುಭವಿಸುತ್ತಾರೆ, ಏಕೆಂದರೆ ಬ್ರೌಸರ್ನ ರೆಂಡರಿಂಗ್ ಕೆಲಸವು ನಾಟಕೀಯವಾಗಿ ಕಡಿಮೆಯಾಗುತ್ತದೆ. ಸ್ಮಾರ್ಟ್ಫೋನ್ಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಕಡಿಮೆ-ಸ್ಪೆಕ್ ಇರುವ ಮಾರುಕಟ್ಟೆಯಲ್ಲಿ ಬೃಹತ್ ಉತ್ಪನ್ನ ಕ್ಯಾಟಲಾಗ್ ಅನ್ನು ಬ್ರೌಸ್ ಮಾಡುವುದನ್ನು ಕಲ್ಪಿಸಿಕೊಳ್ಳಿ; ವರ್ಚುವಲೈಸೇಶನ್ ಕಂಟೇನ್ಮೆಂಟ್ನೊಂದಿಗೆ ಸಂಯೋಜಿಸಲ್ಪಟ್ಟರೆ ಬಳಸಬಹುದಾದ ಅನುಭವವನ್ನು ಖಚಿತಪಡಿಸುತ್ತದೆ.
<style>
.virtualized-list-item {
height: 100px; /* 'size' ಕಂಟೇನ್ಮೆಂಟ್ಗಾಗಿ ಸ್ಥಿರ ಎತ್ತರವು ಮುಖ್ಯವಾಗಿದೆ */
border-bottom: 1px solid #f0f0f0;
padding: 10px;
contain: layout size; /* ಲೇಔಟ್ ಮತ್ತು ಸೈಜ್ ಲೆಕ್ಕಾಚಾರಗಳನ್ನು ಉತ್ತಮಗೊಳಿಸಿ */
overflow: hidden;
}
</style>
<div class="virtualized-list-container">
<!-- ಸ್ಕ್ರಾಲ್ ಸ್ಥಾನವನ್ನು ಆಧರಿಸಿ ಐಟಂಗಳನ್ನು ಡೈನಾಮಿಕ್ ಆಗಿ ಲೋಡ್/ಅನ್ಲೋಡ್ ಮಾಡಲಾಗುತ್ತದೆ -->
<div class="virtualized-list-item">ಉತ್ಪನ್ನ A: ವಿವರಣೆ ಮತ್ತು ಬೆಲೆ</div>
<div class="virtualized-list-item">ಉತ್ಪನ್ನ B: ವಿವರಗಳು ಮತ್ತು ವಿಮರ್ಶೆಗಳು</div>
<!-- ... ನೂರಾರು ಅಥವಾ ಸಾವಿರಾರು ಹೆಚ್ಚು ಐಟಂಗಳು ... -->
</div>
ಆಫ್-ಸ್ಕ್ರೀನ್/ಗುಪ್ತ ಕಾಂಪೊನೆಂಟ್ಗಳು (ಮಾಡಲ್ಗಳು, ಸೈಡ್ಬಾರ್ಗಳು, ಟೂಲ್ಟಿಪ್ಗಳು)
ಅನೇಕ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಯಾವಾಗಲೂ ಗೋಚರಿಸದ ಆದರೆ DOM ನ ಭಾಗವಾಗಿರುವ ಎಲಿಮೆಂಟ್ಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತವೆ, ಉದಾಹರಣೆಗೆ ನ್ಯಾವಿಗೇಷನ್ ಡ್ರಾಯರ್ಗಳು, ಮಾಡಲ್ ಡೈಲಾಗ್ಗಳು, ಟೂಲ್ಟಿಪ್ಗಳು, ಅಥವಾ ಡೈನಾಮಿಕ್ ಜಾಹೀರಾತುಗಳು. ಗುಪ್ತವಾಗಿದ್ದಾಗಲೂ (ಉದಾ., display: none;
ಅಥವಾ visibility: hidden;
ನೊಂದಿಗೆ), ಅವುಗಳು ಕೆಲವೊಮ್ಮೆ ಬ್ರೌಸರ್ನ ರೆಂಡರಿಂಗ್ ಎಂಜಿನ್ ಮೇಲೆ ಪ್ರಭಾವ ಬೀರಬಹುದು, ವಿಶೇಷವಾಗಿ DOM ರಚನೆಯಲ್ಲಿ ಅವುಗಳ ಉಪಸ್ಥಿತಿಯು ಅವು ವೀಕ್ಷಣೆಗೆ ಬಂದಾಗ ಲೇಔಟ್ ಅಥವಾ ಪೇಂಟ್ ಲೆಕ್ಕಾಚಾರಗಳನ್ನು ಅಗತ್ಯಪಡಿಸಿದರೆ.
- ಸಮಸ್ಯೆ:
display: none;
ಒಂದು ಎಲಿಮೆಂಟ್ ಅನ್ನು ರೆಂಡರ್ ಟ್ರೀಯಿಂದ ತೆಗೆದುಹಾಕಿದರೆ,visibility: hidden;
ಅಥವಾ ಆಫ್-ಸ್ಕ್ರೀನ್ ಪೊಸಿಶನಿಂಗ್ (ಉದಾ.,left: -9999px;
) ನಂತಹ ಪ್ರಾಪರ್ಟಿಗಳು ಇನ್ನೂ ಎಲಿಮೆಂಟ್ಗಳನ್ನು ರೆಂಡರ್ ಟ್ರೀಯಲ್ಲಿ ಇರಿಸುತ್ತವೆ, ಅವುಗಳ ಗೋಚರತೆ ಅಥವಾ ಸ್ಥಾನ ಬದಲಾದಾಗ ಸಂಭಾವ್ಯವಾಗಿ ಲೇಔಟ್ ಮೇಲೆ ಪ್ರಭಾವ ಬೀರಬಹುದು ಅಥವಾ ರಿಪೇಂಟ್ ಲೆಕ್ಕಾಚಾರಗಳನ್ನು ಅಗತ್ಯಪಡಿಸಬಹುದು. - ಕಂಟೇನ್ಮೆಂಟ್ನೊಂದಿಗೆ ಪರಿಹಾರ: ಈ ಆಫ್-ಸ್ಕ್ರೀನ್ ಎಲಿಮೆಂಟ್ಗಳಿಗೆ
contain: layout paint;
ಅಥವಾcontain: content;
ಅನ್ನು ಅನ್ವಯಿಸಿ. ಇದು ಅವು ಆಫ್-ಸ್ಕ್ರೀನ್ನಲ್ಲಿ ಸ್ಥಾನ ಪಡೆದಿದ್ದರೂ ಅಥವಾ ಅದೃಶ್ಯವಾಗಿ ರೆಂಡರ್ ಆಗಿದ್ದರೂ, ಅವುಗಳ ಆಂತರಿಕ ಬದಲಾವಣೆಗಳು ಬ್ರೌಸರ್ ಸಂಪೂರ್ಣ ಡಾಕ್ಯುಮೆಂಟ್ನ ಲೇಔಟ್ ಅಥವಾ ಪೇಂಟ್ ಅನ್ನು ಮರು-ಮೌಲ್ಯಮಾಪನ ಮಾಡಲು ಕಾರಣವಾಗುವುದಿಲ್ಲ ಎಂದು ಖಚಿತಪಡಿಸುತ್ತದೆ. ಅವು ಗೋಚರಿಸಿದಾಗ, ಬ್ರೌಸರ್ ಅವುಗಳನ್ನು ಅತಿಯಾದ ವೆಚ್ಚವಿಲ್ಲದೆ ಪ್ರದರ್ಶನದಲ್ಲಿ ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಸಂಯೋಜಿಸಬಹುದು. - ಜಾಗತಿಕ ಪ್ರಸ್ತುತತೆ: ಸಾಧನವನ್ನು ಲೆಕ್ಕಿಸದೆ, ಗ್ರಹಿಸಿದ ಪ್ರತಿಕ್ರಿಯಾತ್ಮಕ ಅನುಭವಕ್ಕಾಗಿ ಮಾಡಲ್ಗಳು ಮತ್ತು ಸೈಡ್ಬಾರ್ಗಳಿಗಾಗಿ ಸುಗಮ ಪರಿವರ್ತನೆಗಳು ಅತ್ಯಗತ್ಯ. JavaScript ಎಕ್ಸಿಕ್ಯೂಶನ್ ನಿಧಾನವಾಗಿರಬಹುದಾದ ಅಥವಾ ಸಿಪಿಯು ಸ್ಪರ್ಧೆಯಿಂದಾಗಿ ಅನಿಮೇಷನ್ ಫ್ರೇಮ್ಗಳು ಕೈಬಿಡಬಹುದಾದ ಪರಿಸರಗಳಲ್ಲಿ, ಕಂಟೇನ್ಮೆಂಟ್ ಸುಗಮತೆಯನ್ನು ಕಾಪಾಡಿಕೊಳ್ಳಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
<style>
.modal-dialog {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 80%;
max-width: 500px;
background: white;
border: 1px solid #ccc;
box-shadow: 0 4px 8px rgba(0,0,0,0.2);
padding: 20px;
z-index: 1000;
display: none; /* ಅಥವಾ ಆರಂಭದಲ್ಲಿ ಆಫ್-ಸ್ಕ್ರೀನ್ */
contain: layout paint; /* ಗೋಚರಿಸಿದಾಗ, ಒಳಗಿನ ಬದಲಾವಣೆಗಳು ಒಳಗೊಂಡಿರುತ್ತವೆ */
}
.modal-dialog.is-open { display: block; }
</style>
<div class="modal-dialog">
<h3>ಸ್ವಾಗತ ಸಂದೇಶ</h3>
<p>ಇದು ಒಂದು ಮಾಡಲ್ ಡೈಲಾಗ್. ಇದರ ವಿಷಯ ಡೈನಾಮಿಕ್ ಆಗಿರಬಹುದು.</p>
<button>ಮುಚ್ಚಿ</button>
</div>
ಸಂಕೀರ್ಣ ವಿಜೆಟ್ಗಳು ಮತ್ತು ಮರುಬಳಕೆ ಮಾಡಬಹುದಾದ ಯುಐ ಕಾಂಪೊನೆಂಟ್ಗಳು
ಆಧುನಿಕ ವೆಬ್ ಅಭಿವೃದ್ಧಿಯು ಕಾಂಪೊನೆಂಟ್-ಆಧಾರಿತ ಆರ್ಕಿಟೆಕ್ಚರ್ಗಳ ಮೇಲೆ ಹೆಚ್ಚು ಅವಲಂಬಿತವಾಗಿದೆ. ಒಂದು ವೆಬ್ಪುಟವು ಸಾಮಾನ್ಯವಾಗಿ ಅನೇಕ ಸ್ವತಂತ್ರ ಕಾಂಪೊನೆಂಟ್ಗಳಿಂದ ಕೂಡಿದೆ – ಅಕಾರ್ಡಿಯನ್ಗಳು, ಟ್ಯಾಬ್ಡ್ ಇಂಟರ್ಫೇಸ್ಗಳು, ವೀಡಿಯೊ ಪ್ಲೇಯರ್ಗಳು, ಸಂವಾದಾತ್ಮಕ ಚಾರ್ಟ್ಗಳು, ಕಾಮೆಂಟ್ ವಿಭಾಗಗಳು, ಅಥವಾ ಜಾಹೀರಾತು ಘಟಕಗಳು. ಈ ಕಾಂಪೊನೆಂಟ್ಗಳು ಸಾಮಾನ್ಯವಾಗಿ ತಮ್ಮದೇ ಆದ ಆಂತರಿಕ ಸ್ಥಿತಿಯನ್ನು ಹೊಂದಿರುತ್ತವೆ ಮತ್ತು ಪುಟದ ಇತರ ಭಾಗಗಳಿಂದ ಸ್ವತಂತ್ರವಾಗಿ ನವೀಕರಿಸಬಹುದು.
- ಸಮಸ್ಯೆ: ಒಂದು ಸಂವಾದಾತ್ಮಕ ಚಾರ್ಟ್ ತನ್ನ ಡೇಟಾವನ್ನು ನವೀಕರಿಸಿದರೆ, ಅಥವಾ ಅಕಾರ್ಡಿಯನ್ ವಿಸ್ತರಿಸಿದರೆ/ಕುಗ್ಗಿದರೆ, ಈ ಬದಲಾವಣೆಗಳು ಕಾಂಪೊನೆಂಟ್ನ ಗಡಿಗಳಿಗೆ ಸೀಮಿತವಾಗಿದ್ದರೂ ಸಹ, ಬ್ರೌಸರ್ ಸಂಪೂರ್ಣ ಡಾಕ್ಯುಮೆಂಟ್ನಾದ್ಯಂತ ಅನಗತ್ಯ ಲೇಔಟ್ ಅಥವಾ ಪೇಂಟ್ ಲೆಕ್ಕಾಚಾರಗಳನ್ನು ಮಾಡಬಹುದು.
- ಕಂಟೇನ್ಮೆಂಟ್ನೊಂದಿಗೆ ಪರಿಹಾರ: ಅಂತಹ ಕಾಂಪೊನೆಂಟ್ಗಳ ಮೂಲ ಎಲಿಮೆಂಟ್ಗೆ
contain: content;
ಅಥವಾcontain: strict;
ಅನ್ನು ಅನ್ವಯಿಸುವುದು. ಇದು ಕಾಂಪೊನೆಂಟ್ನೊಳಗಿನ ಆಂತರಿಕ ಬದಲಾವಣೆಗಳು ಅದರ ಗಡಿಗಳ ಹೊರಗಿನ ಎಲಿಮೆಂಟ್ಗಳ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುವುದಿಲ್ಲ ಎಂದು ಬ್ರೌಸರ್ಗೆ ಸ್ಪಷ್ಟವಾಗಿ ಸಂಕೇತಿಸುತ್ತದೆ, ಇದು ಬ್ರೌಸರ್ಗೆ ತನ್ನ ಮರು-ಲೆಕ್ಕಾಚಾರಗಳ ವ್ಯಾಪ್ತಿಯನ್ನು ಸೀಮಿತಗೊಳಿಸುವ ಮೂಲಕ ರೆಂಡರಿಂಗ್ ಅನ್ನು ಉತ್ತಮಗೊಳಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. - ಜಾಗತಿಕ ಪ್ರಸ್ತುತತೆ: ಜಾಗತಿಕ ತಂಡಗಳು ಬಳಸುವ ದೊಡ್ಡ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಅಥವಾ ಡಿಸೈನ್ ಸಿಸ್ಟಮ್ಗಳಿಗೆ ಇದು ವಿಶೇಷವಾಗಿ ಪರಿಣಾಮಕಾರಿಯಾಗಿದೆ. ವೈವಿಧ್ಯಮಯ ಬ್ರೌಸರ್ಗಳು ಮತ್ತು ಸಾಧನಗಳಾದ್ಯಂತ ಸ್ಥಿರವಾದ ಕಾರ್ಯಕ್ಷಮತೆಯು ಬಳಕೆದಾರರ ಅನುಭವವು ಉನ್ನತ ಮಟ್ಟದಲ್ಲಿ ಉಳಿಯುವುದನ್ನು ಖಚಿತಪಡಿಸುತ್ತದೆ, ಕಾಂಪೊನೆಂಟ್ ಅನ್ನು ಯುರೋಪ್ನ ಉನ್ನತ-ಮಟ್ಟದ ಗೇಮಿಂಗ್ ಪಿಸಿಯಲ್ಲಿ ಅಥವಾ ಆಗ್ನೇಯ ಏಷ್ಯಾದ ಟ್ಯಾಬ್ಲೆಟ್ನಲ್ಲಿ ರೆಂಡರ್ ಮಾಡಲಾಗಿದೆಯೇ ಎಂಬುದನ್ನು ಲೆಕ್ಕಿಸದೆ. ಇದು ಕ್ಲೈಂಟ್ ಬದಿಯಲ್ಲಿ ಗಣನಾತ್ಮಕ ಓವರ್ಹೆಡ್ ಅನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ, ಇದು ಎಲ್ಲೆಡೆ ವೇಗದ ಸಂವಹನಗಳನ್ನು ತಲುಪಿಸಲು ನಿರ್ಣಾಯಕವಾಗಿದೆ.
<style>
.interactive-chart-widget {
width: 100%;
height: 300px;
border: 1px solid #ddd;
contain: content; /* ಲೇಔಟ್, ಪೇಂಟ್, ಸೈಜ್ ಒಳಗೊಂಡಿದೆ */
overflow: hidden;
}
</style>
<div class="interactive-chart-widget">
<!-- JavaScript ಇಲ್ಲಿ ಒಂದು ಸಂಕೀರ್ಣ ಚಾರ್ಟ್ ಅನ್ನು ರೆಂಡರ್ ಮಾಡುತ್ತದೆ, ಉದಾ., D3.js ಅಥವಾ Chart.js ಬಳಸಿ -->
<canvas id="myChart"></canvas>
<div class="chart-controls">
<button>ಡೇಟಾ ವೀಕ್ಷಿಸಿ</button>
<button>ಝೂಮ್</button>
</div>
</div>
ಐಫ್ರೇಮ್ಗಳು ಮತ್ತು ಎಂಬೆಡೆಡ್ ವಿಷಯ (ಎಚ್ಚರಿಕೆಯಿಂದ)
ಐಫ್ರೇಮ್ಗಳು ಈಗಾಗಲೇ ಪ್ರತ್ಯೇಕ ಬ್ರೌಸಿಂಗ್ ಸಂದರ್ಭವನ್ನು ಸೃಷ್ಟಿಸುತ್ತವೆ, ತಮ್ಮ ವಿಷಯವನ್ನು ಪೋಷಕ ಡಾಕ್ಯುಮೆಂಟ್ನಿಂದ ಹೆಚ್ಚಿನ ಮಟ್ಟಿಗೆ ಪ್ರತ್ಯೇಕಿಸುತ್ತವೆ, ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಅನ್ನು ಕೆಲವೊಮ್ಮೆ ಐಫ್ರೇಮ್ನೊಳಗಿನ ಎಲಿಮೆಂಟ್ಗಳಿಗೆ, ಅಥವಾ ಐಫ್ರೇಮ್ನ ಆಯಾಮಗಳು ತಿಳಿದಿದ್ದರೂ ಅದರ ವಿಷಯವು ಡೈನಾಮಿಕ್ ಆಗಿರುವ ನಿರ್ದಿಷ್ಟ ಪ್ರಕರಣಗಳಿಗೆ ಪರಿಗಣಿಸಬಹುದು.
- ಸಮಸ್ಯೆ: ಐಫ್ರೇಮ್ನ ಆಯಾಮಗಳನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ಹೊಂದಿಸದಿದ್ದರೆ ಅಥವಾ ವಿಷಯವು ಡೈನಾಮಿಕ್ ಆಗಿ ಐಫ್ರೇಮ್ನ ವರದಿ ಮಾಡಿದ ಗಾತ್ರವನ್ನು ಬದಲಾಯಿಸಿದರೆ ಐಫ್ರೇಮ್ನ ವಿಷಯವು ಇನ್ನೂ ಪೋಷಕ ಪುಟದಲ್ಲಿ ಲೇಔಟ್ ಶಿಫ್ಟ್ಗಳನ್ನು ಪ್ರಚೋದಿಸಬಹುದು.
- ಕಂಟೇನ್ಮೆಂಟ್ನೊಂದಿಗೆ ಪರಿಹಾರ: ಐಫ್ರೇಮ್ನ ಆಯಾಮಗಳು ಸ್ಥಿರವಾಗಿದ್ದರೆ ಮತ್ತು ಐಫ್ರೇಮ್ ವಿಷಯದ ಮರುಗಾತ್ರದಿಂದಾಗಿ ಸುತ್ತಮುತ್ತಲಿನ ಎಲಿಮೆಂಟ್ಗಳು ಶಿಫ್ಟ್ ಆಗುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ನೀವು ಬಯಸಿದರೆ ಐಫ್ರೇಮ್ಗೆ
contain: size;
ಅನ್ನು ಅನ್ವಯಿಸುವುದು. ಐಫ್ರೇಮ್ನೊಳಗಿನ ವಿಷಯಕ್ಕಾಗಿ, ಅದರ ಆಂತರಿಕ ಕಾಂಪೊನೆಂಟ್ಗಳಿಗೆ ಕಂಟೇನ್ಮೆಂಟ್ ಅನ್ನು ಅನ್ವಯಿಸುವುದು ಆ ಆಂತರಿಕ ರೆಂಡರಿಂಗ್ ಸಂದರ್ಭವನ್ನು ಉತ್ತಮಗೊಳಿಸಬಹುದು. - ಎಚ್ಚರಿಕೆ: ಐಫ್ರೇಮ್ಗಳು ಈಗಾಗಲೇ ಬಲವಾದ ಪ್ರತ್ಯೇಕತೆಯನ್ನು ಹೊಂದಿವೆ.
contain
ಅನ್ನು ಅತಿಯಾಗಿ ಅನ್ವಯಿಸುವುದರಿಂದ ಗಮನಾರ್ಹ ಪ್ರಯೋಜನಗಳು ದೊರೆಯದಿರಬಹುದು ಮತ್ತು, ಅಪರೂಪದ ಸಂದರ್ಭಗಳಲ್ಲಿ, ಕೆಲವು ಎಂಬೆಡೆಡ್ ವಿಷಯವು ನಿರೀಕ್ಷಿಸಿದಂತೆ ವರ್ತಿಸುವುದಕ್ಕೆ ಅಡ್ಡಿಯಾಗಬಹುದು. ಸಂಪೂರ್ಣವಾಗಿ ಪರೀಕ್ಷಿಸಿ.
ಪ್ರಗತಿಪರ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು (PWAs)
PWAs ವೆಬ್ನಲ್ಲಿ ನೇಟಿವ್-ಆಪ್-ತರಹದ ಅನುಭವವನ್ನು ಒದಗಿಸುವ ಗುರಿಯನ್ನು ಹೊಂದಿವೆ, ವೇಗ, ವಿಶ್ವಾಸಾರ್ಹತೆ, ಮತ್ತು ತೊಡಗಿಸಿಕೊಳ್ಳುವಿಕೆಗೆ ಒತ್ತು ನೀಡುತ್ತವೆ. ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಈ ಗುರಿಗಳಿಗೆ ನೇರವಾಗಿ ಕೊಡುಗೆ ನೀಡುತ್ತದೆ.
contain
ಹೇಗೆ ಕೊಡುಗೆ ನೀಡುತ್ತದೆ: ರೆಂಡರಿಂಗ್ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಉತ್ತಮಗೊಳಿಸುವ ಮೂಲಕ,contain
PWAs ಗೆ ವೇಗವಾದ ಆರಂಭಿಕ ಲೋಡ್ಗಳನ್ನು (ರೆಂಡರಿಂಗ್ ಕೆಲಸವನ್ನು ಕಡಿಮೆ ಮಾಡುವ ಮೂಲಕ), ಸುಗಮ ಸಂವಹನಗಳನ್ನು (ಕಡಿಮೆ ಜ್ಯಾಂಕ್ ಸ್ಪೈಕ್ಗಳು), ಮತ್ತು ಹೆಚ್ಚು ವಿಶ್ವಾಸಾರ್ಹ ಬಳಕೆದಾರರ ಅನುಭವವನ್ನು (ಕಡಿಮೆ ಸಿಪಿಯು ಬಳಕೆಯು ಕಡಿಮೆ ಬ್ಯಾಟರಿ ಡ್ರೈನ್ ಮತ್ತು ಉತ್ತಮ ಪ್ರತಿಕ್ರಿಯಾತ್ಮಕತೆಯನ್ನು ಅರ್ಥೈಸುತ್ತದೆ) ಸಾಧಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ. ಇದು ಲಾರ್ಜೆಸ್ಟ್ ಕಂಟೆಂಟ್ಫುಲ್ ಪೇಂಟ್ (LCP) ಮತ್ತು ಕ್ಯುಮುಲೇಟಿವ್ ಲೇಔಟ್ ಶಿಫ್ಟ್ (CLS) ನಂತಹ ಕೋರ್ ವೆಬ್ ವೈಟಲ್ಸ್ ಮೆಟ್ರಿಕ್ಗಳ ಮೇಲೆ ನೇರವಾಗಿ ಪರಿಣಾಮ ಬೀರುತ್ತದೆ.- ಜಾಗತಿಕ ಪ್ರಸ್ತುತತೆ: PWAs ವಿಶೇಷವಾಗಿ ಅಸ್ಥಿರ ನೆಟ್ವರ್ಕ್ ಪರಿಸ್ಥಿತಿಗಳು ಅಥವಾ ಕಡಿಮೆ-ಮಟ್ಟದ ಸಾಧನಗಳಿರುವ ಪ್ರದೇಶಗಳಲ್ಲಿ ಪರಿಣಾಮಕಾರಿಯಾಗಿವೆ, ಏಕೆಂದರೆ ಅವು ಡೇಟಾ ವರ್ಗಾವಣೆಯನ್ನು ಕಡಿಮೆಗೊಳಿಸುತ್ತವೆ ಮತ್ತು ಕ್ಲೈಂಟ್-ಬದಿಯ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಗರಿಷ್ಠಗೊಳಿಸುತ್ತವೆ. ಜಾಗತಿಕ ಬಳಕೆದಾರರ ನೆಲೆಗಾಗಿ ಹೆಚ್ಚಿನ-ಕಾರ್ಯಕ್ಷಮತೆಯ PWAs ನಿರ್ಮಿಸುವ ಡೆವಲಪರ್ಗಳಿಗೆ ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಒಂದು ಪ್ರಮುಖ ಸಾಧನವಾಗಿದೆ.
ಜಾಗತಿಕ ನಿಯೋಜನೆಗಾಗಿ ಉತ್ತಮ ಅಭ್ಯಾಸಗಳು ಮತ್ತು ಪರಿಗಣನೆಗಳು
ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಶಕ್ತಿಯುತವಾಗಿದ್ದರೂ, ಇದು ಸರ್ವರೋಗ ನಿವಾರಣಿಯಲ್ಲ. ಕಾರ್ಯತಂತ್ರದ ಅನ್ವಯ, ಎಚ್ಚರಿಕೆಯ ಮಾಪನ, ಮತ್ತು ಅದರ ಪರಿಣಾಮಗಳ ತಿಳುವಳಿಕೆ ಅತ್ಯಗತ್ಯ, ವಿಶೇಷವಾಗಿ ವೈವಿಧ್ಯಮಯ ಜಾಗತಿಕ ಪ್ರೇಕ್ಷಕರನ್ನು ಗುರಿಯಾಗಿಸಿಕೊಂಡಾಗ.
ಕಾರ್ಯತಂತ್ರದ ಅನ್ವಯ: ಎಲ್ಲೆಡೆ ಅನ್ವಯಿಸಬೇಡಿ
ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಒಂದು ಕಾರ್ಯಕ್ಷಮತೆಯ ಆಪ್ಟಿಮೈಸೇಶನ್ ಆಗಿದೆ, ಸಾಮಾನ್ಯ ಸ್ಟೈಲಿಂಗ್ ನಿಯಮವಲ್ಲ. ಪ್ರತಿಯೊಂದು ಎಲಿಮೆಂಟ್ಗೆ contain
ಅನ್ನು ಅನ್ವಯಿಸುವುದರಿಂದ ವಿರೋಧಾಭಾಸವಾಗಿ ಸಮಸ್ಯೆಗಳಿಗೆ ಕಾರಣವಾಗಬಹುದು ಅಥವಾ ಪ್ರಯೋಜನಗಳನ್ನು ನಿರಾಕರಿಸಬಹುದು. ಬ್ರೌಸರ್ ಆಗಾಗ್ಗೆ ಸ್ಪಷ್ಟವಾದ ಸುಳಿವುಗಳಿಲ್ಲದೆಯೇ ರೆಂಡರಿಂಗ್ ಅನ್ನು ಉತ್ತಮಗೊಳಿಸುವ ಅತ್ಯುತ್ತಮ ಕೆಲಸ ಮಾಡುತ್ತದೆ. ತಿಳಿದಿರುವ ಕಾರ್ಯಕ್ಷಮತೆಯ ಅಡಚಣೆಗಳಾಗಿರುವ ಎಲಿಮೆಂಟ್ಗಳ ಮೇಲೆ ಗಮನಹರಿಸಿ:
- ಆಗಾಗ್ಗೆ ಬದಲಾಗುವ ವಿಷಯವನ್ನು ಹೊಂದಿರುವ ಕಾಂಪೊನೆಂಟ್ಗಳು.
- ವರ್ಚುವಲೈಸ್ಡ್ ಪಟ್ಟಿಗಳಲ್ಲಿರುವ ಎಲಿಮೆಂಟ್ಗಳು.
- ಗೋಚರಿಸಬಹುದಾದ ಆಫ್-ಸ್ಕ್ರೀನ್ ಎಲಿಮೆಂಟ್ಗಳು.
- ಸಂಕೀರ್ಣ, ಸಂವಾದಾತ್ಮಕ ವಿಜೆಟ್ಗಳು.
ಕಂಟೇನ್ಮೆಂಟ್ ಅನ್ನು ಅನ್ವಯಿಸುವ ಮೊದಲು ಪ್ರೊಫೈಲಿಂಗ್ ಪರಿಕರಗಳನ್ನು ಬಳಸಿ ರೆಂಡರಿಂಗ್ ವೆಚ್ಚಗಳು ಎಲ್ಲಿ ಹೆಚ್ಚಾಗಿವೆ ಎಂಬುದನ್ನು ಗುರುತಿಸಿ.
ಮಾಪನವು ಮುಖ್ಯ: ನಿಮ್ಮ ಆಪ್ಟಿಮೈಸೇಶನ್ಗಳನ್ನು ಮೌಲ್ಯೀಕರಿಸಿ
ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಸಹಾಯ ಮಾಡುತ್ತಿದೆಯೇ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಏಕೈಕ ಮಾರ್ಗವೆಂದರೆ ಅದರ ಪರಿಣಾಮವನ್ನು ಅಳೆಯುವುದು. ಬ್ರೌಸರ್ ಡೆವಲಪರ್ ಪರಿಕರಗಳು ಮತ್ತು ವಿಶೇಷ ಕಾರ್ಯಕ್ಷಮತೆ ಪರೀಕ್ಷಾ ಸೇವೆಗಳನ್ನು ಅವಲಂಬಿಸಿ:
- ಬ್ರೌಸರ್ ಡೆವ್ಟೂಲ್ಸ್ (Chrome, Firefox, Edge):
- ಕಾರ್ಯಕ್ಷಮತೆ ಟ್ಯಾಬ್: ನಿಮ್ಮ ಪುಟದೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸುವಾಗ ಕಾರ್ಯಕ್ಷಮತೆಯ ಪ್ರೊಫೈಲ್ ಅನ್ನು ರೆಕಾರ್ಡ್ ಮಾಡಿ. ದೀರ್ಘ-ಚಾಲನೆಯಲ್ಲಿರುವ 'ಲೇಔಟ್' ಅಥವಾ 'ಶೈಲಿಯನ್ನು ಮರು ಲೆಕ್ಕಾಚಾರ ಮಾಡಿ' ಈವೆಂಟ್ಗಳಿಗಾಗಿ ನೋಡಿ. ಕಂಟೇನ್ಮೆಂಟ್ ಅವುಗಳ ಅವಧಿ ಅಥವಾ ವ್ಯಾಪ್ತಿಯನ್ನು ಕಡಿಮೆ ಮಾಡಬೇಕು.
- ರೆಂಡರಿಂಗ್ ಟ್ಯಾಬ್: ನಿಮ್ಮ ಪುಟದ ಯಾವ ಪ್ರದೇಶಗಳು ರಿಪೇಂಟ್ ಆಗುತ್ತಿವೆ ಎಂಬುದನ್ನು ನೋಡಲು 'ಪೇಂಟ್ ಫ್ಲ್ಯಾಶಿಂಗ್' ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ. ಆದರ್ಶಪ್ರಾಯವಾಗಿ, ಒಳಗೊಂಡಿರುವ ಎಲಿಮೆಂಟ್ನೊಳಗಿನ ಬದಲಾವಣೆಗಳು ಆ ಎಲಿಮೆಂಟ್ನ ಗಡಿಗಳೊಳಗೆ ಮಾತ್ರ ಫ್ಲ್ಯಾಶ್ ಆಗಬೇಕು. CLS ಪರಿಣಾಮಗಳನ್ನು ದೃಶ್ಯೀಕರಿಸಲು 'ಲೇಔಟ್ ಶಿಫ್ಟ್ ಪ್ರದೇಶಗಳು' ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ.
- ಲೇಯರ್ಗಳ ಪ್ಯಾನೆಲ್: ಬ್ರೌಸರ್ ಲೇಯರ್ಗಳನ್ನು ಹೇಗೆ ಸಂಯೋಜಿಸುತ್ತಿದೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಿ. ಕಂಟೇನ್ಮೆಂಟ್ ಕೆಲವೊಮ್ಮೆ ಹೊಸ ರೆಂಡರಿಂಗ್ ಲೇಯರ್ಗಳನ್ನು ರಚಿಸಲು ಕಾರಣವಾಗಬಹುದು, ಇದು ಸಂದರ್ಭವನ್ನು ಅವಲಂಬಿಸಿ ಪ್ರಯೋಜನಕಾರಿ ಅಥವಾ (ಅಪರೂಪವಾಗಿ) ಹಾನಿಕಾರಕವಾಗಿರಬಹುದು.
- ಲೈಟ್ಹೌಸ್: ವೆಬ್ ಪುಟಗಳನ್ನು ಕಾರ್ಯಕ್ಷಮತೆ, ಪ್ರವೇಶಸಾಧ್ಯತೆ, ಎಸ್ಇಒ, ಮತ್ತು ಉತ್ತಮ ಅಭ್ಯಾಸಗಳಿಗಾಗಿ ಪರಿಶೋಧಿಸುವ ಜನಪ್ರಿಯ ಸ್ವಯಂಚಾಲಿತ ಸಾಧನ. ಇದು ಕೋರ್ ವೆಬ್ ವೈಟಲ್ಸ್ಗೆ ಸಂಬಂಧಿಸಿದಂತೆ ಕ್ರಿಯಾತ್ಮಕ ಶಿಫಾರಸುಗಳನ್ನು ಮತ್ತು ಅಂಕಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ. ಜಾಗತಿಕ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ವಿಶೇಷವಾಗಿ ಅನುಕರಿಸಿದ ನಿಧಾನವಾದ ನೆಟ್ವರ್ಕ್ ಪರಿಸ್ಥಿತಿಗಳು ಮತ್ತು ಮೊಬೈಲ್ ಸಾಧನಗಳ ಅಡಿಯಲ್ಲಿ ಲೈಟ್ಹೌಸ್ ಪರೀಕ್ಷೆಗಳನ್ನು ಆಗಾಗ್ಗೆ ಚಲಾಯಿಸಿ.
- ವೆಬ್ಪೇಜ್ಟೆಸ್ಟ್: ವಿವಿಧ ಜಾಗತಿಕ ಸ್ಥಳಗಳು ಮತ್ತು ಸಾಧನ ಪ್ರಕಾರಗಳಿಂದ ಸುಧಾರಿತ ಕಾರ್ಯಕ್ಷಮತೆ ಪರೀಕ್ಷೆಯನ್ನು ನೀಡುತ್ತದೆ. ವಿವಿಧ ಖಂಡಗಳು ಮತ್ತು ನೆಟ್ವರ್ಕ್ ಮೂಲಸೌಕರ್ಯಗಳಾದ್ಯಂತ ನಿಮ್ಮ ಸೈಟ್ ಬಳಕೆದಾರರಿಗೆ ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಇದು ಅಮೂಲ್ಯವಾಗಿದೆ.
ಡೆವ್ಟೂಲ್ಸ್ ಅಥವಾ ವೆಬ್ಪೇಜ್ಟೆಸ್ಟ್ನಲ್ಲಿ ಅನುಕರಿಸಿದ ಪರಿಸ್ಥಿತಿಗಳ ಅಡಿಯಲ್ಲಿ (ಉದಾ., ವೇಗದ 3G, ನಿಧಾನ 3G, ಕಡಿಮೆ-ಮಟ್ಟದ ಮೊಬೈಲ್ ಸಾಧನ) ಪರೀಕ್ಷಿಸುವುದು ನಿಮ್ಮ ಆಪ್ಟಿಮೈಸೇಶನ್ಗಳು ನೈಜ-ಪ್ರಪಂಚದ ಜಾಗತಿಕ ಬಳಕೆದಾರರ ಅನುಭವಗಳಿಗೆ ಹೇಗೆ ಅನುವಾದಿಸುತ್ತವೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ನಿರ್ಣಾಯಕವಾಗಿದೆ. ಶಕ್ತಿಯುತ ಡೆಸ್ಕ್ಟಾಪ್ನಲ್ಲಿ ಕನಿಷ್ಠ ಪ್ರಯೋಜನವನ್ನು ನೀಡುವ ಬದಲಾವಣೆಯು ಸೀಮಿತ ಸಂಪರ್ಕವಿರುವ ಪ್ರದೇಶದಲ್ಲಿ ಕಡಿಮೆ-ಮಟ್ಟದ ಮೊಬೈಲ್ ಸಾಧನದಲ್ಲಿ ಪರಿವರ್ತಕವಾಗಬಹುದು.
ಪರಿಣಾಮಗಳು ಮತ್ತು ಸಂಭಾವ್ಯ ತೊಡಕುಗಳನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು
contain: size;
ಗೆ ಸ್ಪಷ್ಟವಾದ ಗಾತ್ರದ ಅಗತ್ಯವಿದೆ: ನೀವು ಎಲಿಮೆಂಟ್ನwidth
ಮತ್ತುheight
ಅನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ಹೊಂದಿಸದೆcontain: size;
ಅನ್ನು ಬಳಸಿದರೆ (ಅಥವಾ ಅದರ ಫ್ಲೆಕ್ಸ್/ಗ್ರಿಡ್ ಪೋಷಕರಿಂದ ಗಾತ್ರವನ್ನು ನಿರ್ಧರಿಸಲಾಗಿದೆಯೆಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳದೆ), ಎಲಿಮೆಂಟ್ ಶೂನ್ಯ ಗಾತ್ರಕ್ಕೆ ಕುಸಿಯಬಹುದು. ಏಕೆಂದರೆ ಬ್ರೌಸರ್ ಅದರ ಆಯಾಮಗಳನ್ನು ನಿರ್ಧರಿಸಲು ಅದರ ವಿಷಯವನ್ನು ಇನ್ನು ಮುಂದೆ ನೋಡುವುದಿಲ್ಲ.contain: size;
ಅನ್ನು ಬಳಸುವಾಗ ಯಾವಾಗಲೂ ನಿಶ್ಚಿತ ಆಯಾಮಗಳನ್ನು ಒದಗಿಸಿ.- ವಿಷಯ ಕ್ಲಿಪ್ಪಿಂಗ್ (
paint
ಮತ್ತುcontent
/strict
ನೊಂದಿಗೆ): ನೆನಪಿಡಿ,contain: paint;
(ಮತ್ತು ಆದ್ದರಿಂದcontent
ಮತ್ತುstrict
) ಮಕ್ಕಳು ಎಲಿಮೆಂಟ್ನ ಗಡಿಗಳಿಗೆ ಕ್ಲಿಪ್ ಮಾಡಲ್ಪಡುತ್ತಾರೆ ಎಂದು ಸೂಚಿಸುತ್ತದೆ,overflow: hidden;
ನಂತೆಯೇ. ನಿಮ್ಮ ವಿನ್ಯಾಸಕ್ಕಾಗಿ ಈ ನಡವಳಿಕೆಯು ಅಪೇಕ್ಷಣೀಯವಾಗಿದೆಯೇ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ. ಒಳಗೊಂಡಿರುವ ಎಲಿಮೆಂಟ್ನೊಳಗಿನposition: fixed
ಅಥವಾposition: absolute
ಹೊಂದಿರುವ ಎಲಿಮೆಂಟ್ಗಳು ವಿಭಿನ್ನವಾಗಿ ವರ್ತಿಸಬಹುದು, ಏಕೆಂದರೆ ಒಳಗೊಂಡಿರುವ ಎಲಿಮೆಂಟ್ ಅವುಗಳಿಗೆ ಹೊಸ ಕಂಟೇನಿಂಗ್ ಬ್ಲಾಕ್ ಆಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. - ಪ್ರವೇಶಸಾಧ್ಯತೆ: ಕಂಟೇನ್ಮೆಂಟ್ ಮುಖ್ಯವಾಗಿ ರೆಂಡರಿಂಗ್ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರಿದರೂ, ಇದು ಕೀಬೋರ್ಡ್ ನ್ಯಾವಿಗೇಷನ್ ಅಥವಾ ಸ್ಕ್ರೀನ್ ರೀಡರ್ ನಡವಳಿಕೆಯಂತಹ ಪ್ರವೇಶಸಾಧ್ಯತೆ ವೈಶಿಷ್ಟ್ಯಗಳಿಗೆ ಅಜಾಗರೂಕತೆಯಿಂದ ಅಡ್ಡಿಯಾಗುವುದಿಲ್ಲ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ. ಉದಾಹರಣೆಗೆ, ನೀವು ಒಂದು ಎಲಿಮೆಂಟ್ ಅನ್ನು ಮರೆಮಾಡಿ ಮತ್ತು ಕಂಟೇನ್ಮೆಂಟ್ ಬಳಸಿದರೆ, ಅದರ ಪ್ರವೇಶಸಾಧ್ಯತೆಯ ಸ್ಥಿತಿಯನ್ನು ಸಹ ಸರಿಯಾಗಿ ನಿರ್ವಹಿಸಲಾಗಿದೆಯೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.
- ಪ್ರತಿಕ್ರಿಯಾತ್ಮಕತೆ: ನಿಮ್ಮ ಒಳಗೊಂಡಿರುವ ಎಲಿಮೆಂಟ್ಗಳನ್ನು ವಿವಿಧ ಪರದೆಯ ಗಾತ್ರಗಳು ಮತ್ತು ಸಾಧನ ದೃಷ್ಟಿಕೋನಗಳಾದ್ಯಂತ ಸಂಪೂರ್ಣವಾಗಿ ಪರೀಕ್ಷಿಸಿ. ಕಂಟೇನ್ಮೆಂಟ್ ಪ್ರತಿಕ್ರಿಯಾತ್ಮಕ ಲೇಔಟ್ಗಳನ್ನು ಮುರಿಯುವುದಿಲ್ಲ ಅಥವಾ ಅನಿರೀಕ್ಷಿತ ದೃಶ್ಯ ಸಮಸ್ಯೆಗಳನ್ನು ಪರಿಚಯಿಸುವುದಿಲ್ಲ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.
ಪ್ರಗತಿಪರ ವರ್ಧನೆ
ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಪ್ರಗತಿಪರ ವರ್ಧನೆಗೆ ಅತ್ಯುತ್ತಮ ಅಭ್ಯರ್ಥಿಯಾಗಿದೆ. ಅದನ್ನು ಬೆಂಬಲಿಸದ ಬ್ರೌಸರ್ಗಳು ಕೇವಲ ಪ್ರಾಪರ್ಟಿಯನ್ನು ನಿರ್ಲಕ್ಷಿಸುತ್ತವೆ, ಮತ್ತು ಪುಟವು ಕಂಟೇನ್ಮೆಂಟ್ ಇಲ್ಲದೆ (ಸಂಭಾವ್ಯವಾಗಿ ನಿಧಾನವಾಗಿದ್ದರೂ) ರೆಂಡರ್ ಆಗುತ್ತದೆ. ಇದರರ್ಥ ನೀವು ಹಳೆಯ ಬ್ರೌಸರ್ಗಳನ್ನು ಮುರಿಯುವ ಭಯವಿಲ್ಲದೆ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಯೋಜನೆಗಳಿಗೆ ಅದನ್ನು ಅನ್ವಯಿಸಬಹುದು.
ಬ್ರೌಸರ್ ಹೊಂದಾಣಿಕೆ
ಆಧುನಿಕ ಬ್ರೌಸರ್ಗಳು ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ಗೆ ಅತ್ಯುತ್ತಮ ಬೆಂಬಲವನ್ನು ಹೊಂದಿವೆ (Chrome, Firefox, Edge, Safari, Opera ಎಲ್ಲವೂ ಅದನ್ನು ಚೆನ್ನಾಗಿ ಬೆಂಬಲಿಸುತ್ತವೆ). ಇತ್ತೀಚಿನ ಹೊಂದಾಣಿಕೆಯ ಮಾಹಿತಿಗಾಗಿ ನೀವು Can I Use ಅನ್ನು ಪರಿಶೀಲಿಸಬಹುದು. ಇದು ಕಾರ್ಯಕ್ಷಮತೆಯ ಸುಳಿವು ಆಗಿರುವುದರಿಂದ, ಬೆಂಬಲದ ಕೊರತೆಯು ಕೇವಲ ತಪ್ಪಿದ ಆಪ್ಟಿಮೈಸೇಶನ್ ಅನ್ನು ಅರ್ಥೈಸುತ್ತದೆ, ಮುರಿದ ಲೇಔಟ್ ಅಲ್ಲ.
ತಂಡದ ಸಹಯೋಗ ಮತ್ತು ದಾಖಲಾತಿ
ಜಾಗತಿಕ ಅಭಿವೃದ್ಧಿ ತಂಡಗಳಿಗೆ, ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ನ ಬಳಕೆಯನ್ನು ದಾಖಲಿಸುವುದು ಮತ್ತು ಸಂವಹನ ಮಾಡುವುದು ನಿರ್ಣಾಯಕವಾಗಿದೆ. ನಿಮ್ಮ ಕಾಂಪೊನೆಂಟ್ ಲೈಬ್ರರಿ ಅಥವಾ ಡಿಸೈನ್ ಸಿಸ್ಟಮ್ನಲ್ಲಿ ಅದನ್ನು ಯಾವಾಗ ಮತ್ತು ಹೇಗೆ ಅನ್ವಯಿಸಬೇಕು ಎಂಬುದರ ಕುರಿತು ಸ್ಪಷ್ಟ ಮಾರ್ಗಸೂಚಿಗಳನ್ನು ಸ್ಥಾಪಿಸಿ. ಸ್ಥಿರ ಮತ್ತು ಪರಿಣಾಮಕಾರಿ ಬಳಕೆಯನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಅದರ ಪ್ರಯೋಜನಗಳು ಮತ್ತು ಸಂಭಾವ್ಯ ಪರಿಣಾಮಗಳ ಬಗ್ಗೆ ಡೆವಲಪರ್ಗಳಿಗೆ ಶಿಕ್ಷಣ ನೀಡಿ.
ಸುಧಾರಿತ ಸನ್ನಿವೇಶಗಳು ಮತ್ತು ಸಂಭಾವ್ಯ ಅಪಾಯಗಳು
ಆಳವಾಗಿ ಪರಿಶೀಲಿಸಿದಾಗ, ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವಾಗ ಹೆಚ್ಚು ಸೂಕ್ಷ್ಮವಾದ ಸಂವಹನಗಳು ಮತ್ತು ಸಂಭಾವ್ಯ ಸವಾಲುಗಳನ್ನು ಅನ್ವೇಷಿಸುವುದು ಯೋಗ್ಯವಾಗಿದೆ.
ಇತರ ಸಿಎಸ್ಎಸ್ ಪ್ರಾಪರ್ಟಿಗಳೊಂದಿಗೆ ಸಂವಹನ
position: fixed
ಮತ್ತುposition: absolute
: ಈ ಸ್ಥಾನೀಕರಣ ಸಂದರ್ಭಗಳನ್ನು ಹೊಂದಿರುವ ಎಲಿಮೆಂಟ್ಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಆರಂಭಿಕ ಕಂಟೇನಿಂಗ್ ಬ್ಲಾಕ್ (ವ್ಯೂಪೋರ್ಟ್) ಅಥವಾ ಹತ್ತಿರದ ಸ್ಥಾನೀಕರಿಸಿದ ಪೂರ್ವಜರಿಗೆ ಸಂಬಂಧಿಸಿರುತ್ತವೆ. ಆದಾಗ್ಯೂ,contain: paint;
(ಅಥವಾcontent
,strict
) ಹೊಂದಿರುವ ಎಲಿಮೆಂಟ್ ಸ್ಪಷ್ಟವಾಗಿ ಸ್ಥಾನೀಕರಿಸದಿದ್ದರೂ ಸಹ, ಅದರ ವಂಶಸ್ಥರಿಗೆ ಹೊಸ ಕಂಟೇನಿಂಗ್ ಬ್ಲಾಕ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ. ಇದು ಸಂಪೂರ್ಣವಾಗಿ ಅಥವಾ ಸ್ಥಿರವಾಗಿ-ಸ್ಥಾನೀಕರಿಸಿದ ಮಕ್ಕಳ ನಡವಳಿಕೆಯನ್ನು ಸೂಕ್ಷ್ಮವಾಗಿ ಬದಲಾಯಿಸಬಹುದು, ಇದು ಅನಿರೀಕ್ಷಿತ ಆದರೆ ಶಕ್ತಿಯುತ ಅಡ್ಡ ಪರಿಣಾಮವಾಗಿರಬಹುದು. ಉದಾಹರಣೆಗೆ,contain: paint
ಎಲಿಮೆಂಟ್ನೊಳಗಿನfixed
ಎಲಿಮೆಂಟ್ ವ್ಯೂಪೋರ್ಟ್ಗೆ ಅಲ್ಲ, ಅದರ ಪೂರ್ವಜರಿಗೆ ಸಂಬಂಧಿಸಿದಂತೆ ಸ್ಥಿರವಾಗಿರುತ್ತದೆ. ಇದು ಡ್ರಾಪ್ಡೌನ್ಗಳು ಅಥವಾ ಟೂಲ್ಟಿಪ್ಗಳಂತಹ ಕಾಂಪೊನೆಂಟ್ಗಳಿಗೆ ಆಗಾಗ್ಗೆ ಅಪೇಕ್ಷಣೀಯವಾಗಿರುತ್ತದೆ.overflow
: ಗಮನಿಸಿದಂತೆ, ವಿಷಯವು ಎಲಿಮೆಂಟ್ನ ಗಡಿಗಳ ಆಚೆಗೆ ವಿಸ್ತರಿಸಿದರೆcontain: paint;
ಪರೋಕ್ಷವಾಗಿoverflow: hidden;
ನಂತೆ ವರ್ತಿಸುತ್ತದೆ. ಈ ಕ್ಲಿಪ್ಪಿಂಗ್ ಪರಿಣಾಮದ ಬಗ್ಗೆ ಗಮನವಿರಲಿ. ನಿಮಗೆ ವಿಷಯವು ಓವರ್ಫ್ಲೋ ಆಗಬೇಕಾದರೆ, ನಿಮ್ಮ ಕಂಟೇನ್ಮೆಂಟ್ ಕಾರ್ಯತಂತ್ರ ಅಥವಾ ಎಲಿಮೆಂಟ್ ರಚನೆಯನ್ನು ನೀವು ಸರಿಹೊಂದಿಸಬೇಕಾಗಬಹುದು.- ಫ್ಲೆಕ್ಸ್ಬಾಕ್ಸ್ ಮತ್ತು ಗ್ರಿಡ್ ಲೇಔಟ್ಗಳು: ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಅನ್ನು ವೈಯಕ್ತಿಕ ಫ್ಲೆಕ್ಸ್ ಅಥವಾ ಗ್ರಿಡ್ ಐಟಂಗಳಿಗೆ ಅನ್ವಯಿಸಬಹುದು. ಉದಾಹರಣೆಗೆ, ನೀವು ಅನೇಕ ಐಟಂಗಳನ್ನು ಹೊಂದಿರುವ ಫ್ಲೆಕ್ಸ್ ಕಂಟೇನರ್ ಹೊಂದಿದ್ದರೆ, ಪ್ರತಿಯೊಂದು ಐಟಂಗೆ
contain: layout;
ಅನ್ನು ಅನ್ವಯಿಸುವುದು ಐಟಂಗಳು ಆಗಾಗ್ಗೆ ಗಾತ್ರ ಅಥವಾ ವಿಷಯವನ್ನು ಆಂತರಿಕವಾಗಿ ಬದಲಾಯಿಸಿದರೆ ರಿಫ್ಲೋಗಳನ್ನು ಉತ್ತಮಗೊಳಿಸಬಹುದು. ಆದಾಗ್ಯೂ,contain: size;
ಪರಿಣಾಮಕಾರಿಯಾಗಿರಲು ಗಾತ್ರದ ನಿಯಮಗಳು (ಉದಾ.,flex-basis
,grid-template-columns
) ಇನ್ನೂ ಐಟಂನ ಆಯಾಮಗಳನ್ನು ಸರಿಯಾಗಿ ನಿರ್ಧರಿಸುತ್ತಿವೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.
ಕಂಟೇನ್ಮೆಂಟ್ ಸಮಸ್ಯೆಗಳನ್ನು ಡೀಬಗ್ ಮಾಡುವುದು
contain
ಅನ್ನು ಅನ್ವಯಿಸಿದ ನಂತರ ನೀವು ಅನಿರೀಕ್ಷಿತ ನಡವಳಿಕೆಯನ್ನು ಎದುರಿಸಿದರೆ, ಡೀಬಗ್ ಮಾಡಲು ಹೀಗೆ ಸಂಪರ್ಕಿಸಿ:
- ದೃಶ್ಯ ಪರಿಶೀಲನೆ: ಕ್ಲಿಪ್ ಮಾಡಿದ ವಿಷಯ ಅಥವಾ ಅನಿರೀಕ್ಷಿತ ಎಲಿಮೆಂಟ್ ಕುಸಿತಗಳಿಗಾಗಿ ಪರಿಶೀಲಿಸಿ, ಇದು ಆಗಾಗ್ಗೆ ಸ್ಪಷ್ಟವಾದ ಆಯಾಮಗಳಿಲ್ಲದೆ
contain: size;
ನೊಂದಿಗೆ ಸಮಸ್ಯೆಯನ್ನು ಸೂಚಿಸುತ್ತದೆ, ಅಥವಾcontain: paint;
ನಿಂದ ಅನಪೇಕ್ಷಿತ ಕ್ಲಿಪ್ಪಿಂಗ್ ಅನ್ನು ಸೂಚಿಸುತ್ತದೆ. - ಬ್ರೌಸರ್ ಡೆವ್ಟೂಲ್ಸ್ ಎಚ್ಚರಿಕೆಗಳು: ಸ್ಪಷ್ಟವಾದ ಗಾತ್ರವಿಲ್ಲದೆ
contain: size;
ಅನ್ನು ಅನ್ವಯಿಸಿದರೆ, ಅಥವಾ ಇತರ ಪ್ರಾಪರ್ಟಿಗಳು ಸಂಘರ್ಷಿಸುತ್ತಿರಬಹುದು, ಆಧುನಿಕ ಬ್ರೌಸರ್ಗಳು ಆಗಾಗ್ಗೆ ಕನ್ಸೋಲ್ನಲ್ಲಿ ಎಚ್ಚರಿಕೆಗಳನ್ನು ಒದಗಿಸುತ್ತವೆ. ಈ ಸಂದೇಶಗಳಿಗೆ ಗಮನ ಕೊಡಿ. contain
ಅನ್ನು ಟಾಗಲ್ ಮಾಡಿ: ಸಮಸ್ಯೆಯು ಪರಿಹಾರವಾಗುತ್ತದೆಯೇ ಎಂದು ನೋಡಲುcontain
ಪ್ರಾಪರ್ಟಿಯನ್ನು ತಾತ್ಕಾಲಿಕವಾಗಿ ತೆಗೆದುಹಾಕಿ. ಇದು ಕಂಟೇನ್ಮೆಂಟ್ ಕಾರಣವೇ ಎಂದು ಪ್ರತ್ಯೇಕಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.- ಪ್ರೊಫೈಲ್ ಲೇಔಟ್/ಪೇಂಟ್: ಸೆಷನ್ ಅನ್ನು ರೆಕಾರ್ಡ್ ಮಾಡಲು ಡೆವ್ಟೂಲ್ಸ್ನಲ್ಲಿ ಕಾರ್ಯಕ್ಷಮತೆ ಟ್ಯಾಬ್ ಬಳಸಿ. 'ಲೇಔಟ್' ಮತ್ತು 'ಪೇಂಟ್' ವಿಭಾಗಗಳನ್ನು ನೋಡಿ. ಅವುಗಳು ನೀವು ನಿರೀಕ್ಷಿಸುವ ಸ್ಥಳದಲ್ಲಿ ಇನ್ನೂ ಸಂಭವಿಸುತ್ತಿವೆಯೇ? ಮರು-ಲೆಕ್ಕಾಚಾರಗಳ ವ್ಯಾಪ್ತಿಗಳು ನೀವು ನಿರೀಕ್ಷಿಸಿದ್ದೇವೆಯೇ?
ಅತಿಯಾದ ಬಳಕೆ ಮತ್ತು ಕ್ಷೀಣಿಸುತ್ತಿರುವ ಆದಾಯ
ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಸರ್ವರೋಗ ನಿವಾರಣಿಯಲ್ಲ ಎಂದು ಪುನರುಚ್ಚರಿಸುವುದು ನಿರ್ಣಾಯಕವಾಗಿದೆ. ಅದನ್ನು ಕುರುಡಾಗಿ ಅಥವಾ ಪ್ರತಿಯೊಂದು ಎಲಿಮೆಂಟ್ಗೆ ಅನ್ವಯಿಸುವುದರಿಂದ ಕನಿಷ್ಠ ಲಾಭಗಳಿಗೆ ಕಾರಣವಾಗಬಹುದು ಅಥವಾ ಸಂಪೂರ್ಣವಾಗಿ ಅರ್ಥವಾಗದಿದ್ದರೆ ಸೂಕ್ಷ್ಮ ರೆಂಡರಿಂಗ್ ಸಮಸ್ಯೆಗಳನ್ನು ಪರಿಚಯಿಸಬಹುದು. ಉದಾಹರಣೆಗೆ, ಒಂದು ಎಲಿಮೆಂಟ್ ಈಗಾಗಲೇ ಬಲವಾದ ನೈಸರ್ಗಿಕ ಪ್ರತ್ಯೇಕತೆಯನ್ನು ಹೊಂದಿದ್ದರೆ (ಉದಾ., ಡಾಕ್ಯುಮೆಂಟ್ ಹರಿವಿನ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರದ ಸಂಪೂರ್ಣವಾಗಿ ಸ್ಥಾನೀಕರಿಸಿದ ಎಲಿಮೆಂಟ್), `contain` ಅನ್ನು ಸೇರಿಸುವುದರಿಂದ ನಗಣ್ಯ ಪ್ರಯೋಜನಗಳನ್ನು ನೀಡಬಹುದು. ಗುರಿಯು ಗುರುತಿಸಲ್ಪಟ್ಟ ಅಡಚಣೆಗಳಿಗಾಗಿ ಉದ್ದೇಶಿತ ಆಪ್ಟಿಮೈಸೇಶನ್ ಆಗಿದೆ, ಸಾರಾಸಗಟು ಅನ್ವಯವಲ್ಲ. ಲೇಔಟ್ ಮತ್ತು ಪೇಂಟ್ ವೆಚ್ಚಗಳು ಸ್ಪಷ್ಟವಾಗಿ ಹೆಚ್ಚಾಗಿರುವ ಮತ್ತು ರಚನಾತ್ಮಕ ಪ್ರತ್ಯೇಕತೆಯು ನಿಮ್ಮ ಕಾಂಪೊನೆಂಟ್ನ ಶಬ್ದಾರ್ಥದ ಅರ್ಥಕ್ಕೆ ಸರಿಹೊಂದುವ ಪ್ರದೇಶಗಳ ಮೇಲೆ ಗಮನಹರಿಸಿ.
ವೆಬ್ ಕಾರ್ಯಕ್ಷಮತೆ ಮತ್ತು ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ನ ಭವಿಷ್ಯ
ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ತುಲನಾತ್ಮಕವಾಗಿ ಪ್ರಬುದ್ಧ ವೆಬ್ ಮಾನದಂಡವಾಗಿದೆ, ಆದರೆ ಅದರ ಪ್ರಾಮುಖ್ಯತೆಯು ಬೆಳೆಯುತ್ತಲೇ ಇದೆ, ವಿಶೇಷವಾಗಿ ಕೋರ್ ವೆಬ್ ವೈಟಲ್ಸ್ನಂತಹ ಬಳಕೆದಾರರ ಅನುಭವ ಮೆಟ್ರಿಕ್ಗಳ ಮೇಲೆ ಉದ್ಯಮದ ಗಮನದೊಂದಿಗೆ. ಈ ಮೆಟ್ರಿಕ್ಗಳು (ಲಾರ್ಜೆಸ್ಟ್ ಕಂಟೆಂಟ್ಫುಲ್ ಪೇಂಟ್, ಫಸ್ಟ್ ಇನ್ಪುಟ್ ಡಿಲೇ, ಕ್ಯುಮುಲೇಟಿವ್ ಲೇಔಟ್ ಶಿಫ್ಟ್) `contain` ಒದಗಿಸುವ ರೀತಿಯ ರೆಂಡರಿಂಗ್ ಆಪ್ಟಿಮೈಸೇಶನ್ಗಳಿಂದ ನೇರವಾಗಿ ಪ್ರಯೋಜನ ಪಡೆಯುತ್ತವೆ.
- ಲಾರ್ಜೆಸ್ಟ್ ಕಂಟೆಂಟ್ಫುಲ್ ಪೇಂಟ್ (LCP): ಲೇಔಟ್ ಶಿಫ್ಟ್ಗಳು ಮತ್ತು ಪೇಂಟ್ ಸೈಕಲ್ಗಳನ್ನು ಕಡಿಮೆ ಮಾಡುವ ಮೂಲಕ, `contain` ಬ್ರೌಸರ್ಗೆ ಮುಖ್ಯ ವಿಷಯವನ್ನು ವೇಗವಾಗಿ ರೆಂಡರ್ ಮಾಡಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ, LCP ಅನ್ನು ಸುಧಾರಿಸುತ್ತದೆ.
- ಕ್ಯುಮುಲೇಟಿವ್ ಲೇಔಟ್ ಶಿಫ್ಟ್ (CLS):
contain: size;
CLS ಅನ್ನು ತಗ್ಗಿಸಲು ನಂಬಲಾಗದಷ್ಟು ಶಕ್ತಿಯುತವಾಗಿದೆ. ಬ್ರೌಸರ್ಗೆ ಒಂದು ಎಲಿಮೆಂಟ್ನ ನಿಖರವಾದ ಗಾತ್ರವನ್ನು ಹೇಳುವ ಮೂಲಕ, ಅದರ ವಿಷಯವು ಅಂತಿಮವಾಗಿ ಲೋಡ್ ಆದಾಗ ಅಥವಾ ಬದಲಾದಾಗ ಅನಿರೀಕ್ಷಿತ ಶಿಫ್ಟ್ಗಳನ್ನು ನೀವು ತಡೆಯುತ್ತೀರಿ, ಇದು ಹೆಚ್ಚು ಸ್ಥಿರವಾದ ದೃಶ್ಯ ಅನುಭವಕ್ಕೆ ಕಾರಣವಾಗುತ್ತದೆ. - ಫಸ್ಟ್ ಇನ್ಪುಟ್ ಡಿಲೇ (FID): `contain` ನೇರವಾಗಿ FID ಮೇಲೆ ಪರಿಣಾಮ ಬೀರದಿದ್ದರೂ (ಇದು ಬಳಕೆದಾರರ ಇನ್ಪುಟ್ಗೆ ಪ್ರತಿಕ್ರಿಯಾತ್ಮಕತೆಯನ್ನು ಅಳೆಯುತ್ತದೆ), ರೆಂಡರಿಂಗ್ ಸಮಯದಲ್ಲಿ ಮುಖ್ಯ ಥ್ರೆಡ್ ಕೆಲಸವನ್ನು ಕಡಿಮೆ ಮಾಡುವ ಮೂಲಕ, ಇದು ಬಳಕೆದಾರರ ಸಂವಹನಗಳಿಗೆ ಹೆಚ್ಚು ತ್ವರಿತವಾಗಿ ಪ್ರತಿಕ್ರಿಯಿಸಲು ಬ್ರೌಸರ್ ಅನ್ನು ಮುಕ್ತಗೊಳಿಸುತ್ತದೆ, ದೀರ್ಘ ಕಾರ್ಯಗಳನ್ನು ಕಡಿಮೆ ಮಾಡುವ ಮೂಲಕ ಪರೋಕ್ಷವಾಗಿ FID ಅನ್ನು ಸುಧಾರಿಸುತ್ತದೆ.
ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಡೀಫಾಲ್ಟ್ ಆಗಿ ಹೆಚ್ಚು ಸಂಕೀರ್ಣ ಮತ್ತು ಪ್ರತಿಕ್ರಿಯಾತ್ಮಕವಾದಂತೆ, ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ನಂತಹ ತಂತ್ರಗಳು ಅನಿವಾರ್ಯವಾಗುತ್ತವೆ. ಅವು ರೆಂಡರಿಂಗ್ ಪೈಪ್ಲೈನ್ನ ಮೇಲೆ ಹೆಚ್ಚು ವಿವರವಾದ ನಿಯಂತ್ರಣದತ್ತ ವೆಬ್ ಅಭಿವೃದ್ಧಿಯಲ್ಲಿನ ವಿಶಾಲವಾದ ಪ್ರವೃತ್ತಿಯ ಭಾಗವಾಗಿವೆ, ಡೆವಲಪರ್ಗಳಿಗೆ ಹೆಚ್ಚು ಕಾರ್ಯಕ್ಷಮತೆಯ ಅನುಭವಗಳನ್ನು ನಿರ್ಮಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತವೆ, ಅದು ಬಳಕೆದಾರರಿಗೆ ಅವರ ಸಾಧನ, ನೆಟ್ವರ್ಕ್, ಅಥವಾ ಸ್ಥಳವನ್ನು ಲೆಕ್ಕಿಸದೆ ಪ್ರವೇಶಿಸಬಹುದಾದ ಮತ್ತು ಸಂತೋಷಕರವಾಗಿರುತ್ತದೆ.
ಬ್ರೌಸರ್ ರೆಂಡರಿಂಗ್ ಎಂಜಿನ್ಗಳ ನಿರಂತರ ವಿಕಾಸವು `contain` ನಂತಹ ವೆಬ್ ಮಾನದಂಡಗಳ ಬುದ್ಧಿವಂತ ಅನ್ವಯವು ನಿರ್ಣಾಯಕವಾಗಿ ಮುಂದುವರಿಯುತ್ತದೆ ಎಂದೂ ಅರ್ಥ. ಈ ಎಂಜಿನ್ಗಳು ನಂಬಲಾಗದಷ್ಟು ಅತ್ಯಾಧುನಿಕವಾಗಿವೆ, ಆದರೆ ಅವುಗಳು ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿ ನಿರ್ಧಾರಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳಲು ಸಹಾಯ ಮಾಡುವ ಸ್ಪಷ್ಟವಾದ ಸುಳಿವುಗಳಿಂದ ಇನ್ನೂ ಪ್ರಯೋಜನ ಪಡೆಯುತ್ತವೆ. ಅಂತಹ ಶಕ್ತಿಯುತ, ಘೋಷಣಾತ್ಮಕ ಸಿಎಸ್ಎಸ್ ಪ್ರಾಪರ್ಟಿಗಳನ್ನು ಬಳಸಿಕೊಳ್ಳುವ ಮೂಲಕ, ನಾವು ಜಾಗತಿಕವಾಗಿ ಹೆಚ್ಚು ಏಕರೂಪವಾಗಿ ವೇಗದ ಮತ್ತು ದಕ್ಷ ವೆಬ್ ಅನುಭವಕ್ಕೆ ಕೊಡುಗೆ ನೀಡುತ್ತೇವೆ, ಡಿಜಿಟಲ್ ವಿಷಯ ಮತ್ತು ಸೇವೆಗಳು ಎಲ್ಲರಿಗೂ, ಎಲ್ಲೆಡೆ ಪ್ರವೇಶಿಸಬಹುದಾದ ಮತ್ತು ಆನಂದದಾಯಕವಾಗಿರುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುತ್ತೇವೆ.
ತೀರ್ಮಾನ
ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಕಾರ್ಯಕ್ಷಮತೆ ಆಪ್ಟಿಮೈಸೇಶನ್ಗಾಗಿ ವೆಬ್ ಡೆವಲಪರ್ನ ಶಸ್ತ್ರಾಗಾರದಲ್ಲಿ ಒಂದು ಶಕ್ತಿಯುತ, ಆದರೆ ಆಗಾಗ್ಗೆ ಕಡಿಮೆ ಬಳಕೆಯಾಗುವ ಸಾಧನವಾಗಿದೆ. ಕೆಲವು ಯುಐ ಕಾಂಪೊನೆಂಟ್ಗಳ ಪ್ರತ್ಯೇಕಿತ ಸ್ವರೂಪದ ಬಗ್ಗೆ ಬ್ರೌಸರ್ಗೆ ಸ್ಪಷ್ಟವಾಗಿ ತಿಳಿಸುವ ಮೂಲಕ, ಡೆವಲಪರ್ಗಳು ಲೇಔಟ್ ಮತ್ತು ಪೇಂಟ್ ಕಾರ್ಯಾಚರಣೆಗಳೊಂದಿಗೆ ಸಂಬಂಧಿಸಿದ ಗಣನಾತ್ಮಕ ಹೊರೆಯನ್ನು ಗಮನಾರ್ಹವಾಗಿ ಕಡಿಮೆ ಮಾಡಬಹುದು. ಇದು ನೇರವಾಗಿ ವೇಗವಾದ ಲೋಡಿಂಗ್ ಸಮಯಗಳು, ಸುಗಮ ಅನಿಮೇಷನ್ಗಳು, ಮತ್ತು ಹೆಚ್ಚು ಪ್ರತಿಕ್ರಿಯಾತ್ಮಕ ಬಳಕೆದಾರ ಇಂಟರ್ಫೇಸ್ಗೆ ಅನುವಾದಿಸುತ್ತದೆ, ಇದು ವೈವಿಧ್ಯಮಯ ಸಾಧನಗಳು ಮತ್ತು ನೆಟ್ವರ್ಕ್ ಪರಿಸ್ಥಿತಿಗಳೊಂದಿಗೆ ಜಾಗತಿಕ ಪ್ರೇಕ್ಷಕರಿಗೆ ಉತ್ತಮ-ಗುಣಮಟ್ಟದ ಅನುಭವವನ್ನು ತಲುಪಿಸಲು ಅತ್ಯಂತ ಮುಖ್ಯವಾಗಿದೆ.
ಪರಿಕಲ್ಪನೆಯು ಆರಂಭದಲ್ಲಿ ಸಂಕೀರ್ಣವೆಂದು ತೋರಬಹುದಾದರೂ, contain
ಪ್ರಾಪರ್ಟಿಯನ್ನು ಅದರ ವೈಯಕ್ತಿಕ ಮೌಲ್ಯಗಳಾದ – layout
, paint
, size
, ಮತ್ತು style
– ಆಗಿ ವಿಭಜಿಸುವುದು ಉದ್ದೇಶಿತ ಆಪ್ಟಿಮೈಸೇಶನ್ಗಾಗಿ ನಿಖರವಾದ ಸಾಧನಗಳ ಗುಂಪನ್ನು ಬಹಿರಂಗಪಡಿಸುತ್ತದೆ. ವರ್ಚುವಲೈಸ್ಡ್ ಪಟ್ಟಿಗಳಿಂದ ಹಿಡಿದು ಆಫ್-ಸ್ಕ್ರೀನ್ ಮಾಡಲ್ಗಳು ಮತ್ತು ಸಂಕೀರ್ಣ ಸಂವಾದಾತ್ಮಕ ವಿಜೆಟ್ಗಳವರೆಗೆ, ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ನ ಪ್ರಾಯೋಗಿಕ ಅನ್ವಯಗಳು ವ್ಯಾಪಕ ಮತ್ತು ಪರಿಣಾಮಕಾರಿಯಾಗಿವೆ. ಆದಾಗ್ಯೂ, ಯಾವುದೇ ಶಕ್ತಿಯುತ ತಂತ್ರದಂತೆ, ಇದಕ್ಕೆ ಕಾರ್ಯತಂತ್ರದ ಅನ್ವಯ, ಸಂಪೂರ್ಣ ಪರೀಕ್ಷೆ, ಮತ್ತು ಅದರ ಪರಿಣಾಮಗಳ ಸ್ಪಷ್ಟ ತಿಳುವಳಿಕೆ ಅಗತ್ಯ. ಅದನ್ನು ಕುರುಡಾಗಿ ಅನ್ವಯಿಸಬೇಡಿ; ನಿಮ್ಮ ಅಡಚಣೆಗಳನ್ನು ಗುರುತಿಸಿ, ನಿಮ್ಮ ಪರಿಣಾಮವನ್ನು ಅಳೆಯಿರಿ, ಮತ್ತು ನಿಮ್ಮ ವಿಧಾನವನ್ನು ಉತ್ತಮಗೊಳಿಸಿ.
ಸಿಎಸ್ಎಸ್ ಕಂಟೇನ್ಮೆಂಟ್ ಅನ್ನು ಅಳವಡಿಸಿಕೊಳ್ಳುವುದು ಇಡೀ ಪ್ರಪಂಚದಾದ್ಯಂತದ ಬಳಕೆದಾರರ ಅಗತ್ಯಗಳನ್ನು ಪೂರೈಸುವ ಹೆಚ್ಚು ದೃಢವಾದ, ಕಾರ್ಯಕ್ಷಮತೆಯ, ಮತ್ತು ಎಲ್ಲರನ್ನೂ ಒಳಗೊಂಡ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ನಿರ್ಮಿಸುವತ್ತ ಒಂದು ಪೂರ್ವಭಾವಿ ಹೆಜ್ಜೆಯಾಗಿದೆ, ವೇಗ ಮತ್ತು ಪ್ರತಿಕ್ರಿಯಾತ್ಮಕತೆಯು ಐಷಾರಾಮಿಗಳಲ್ಲ ಆದರೆ ನಾವು ರಚಿಸುವ ಡಿಜಿಟಲ್ ಅನುಭವಗಳ ಮೂಲಭೂತ ವೈಶಿಷ್ಟ್ಯಗಳಾಗಿವೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುವುದು. ಇಂದೇ ನಿಮ್ಮ ಯೋಜನೆಗಳಲ್ಲಿ contain
ನೊಂದಿಗೆ ಪ್ರಯೋಗವನ್ನು ಪ್ರಾರಂಭಿಸಿ, ಮತ್ತು ನಿಮ್ಮ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗಾಗಿ ಹೊಸ ಮಟ್ಟದ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಿ, ವೆಬ್ ಅನ್ನು ಎಲ್ಲರಿಗೂ ವೇಗವಾದ, ಹೆಚ್ಚು ಪ್ರವೇಶಿಸಬಹುದಾದ ಸ್ಥಳವನ್ನಾಗಿ ಮಾಡಿ.